2009-08-27 3 views
2

Cela semble être une question ridiculement simple, et pourtant je n'arrive pas à trouver une réponse.Flex 3 Le texte d'alerte ne s'étire pas pour remplir l'espace?

J'essaie d'afficher des informations simples dans une alerte (je préfère ne pas utiliser une alerte, mais je besoin d'une solution simple et rapide n » pour un projet qui est arrivé à être la porte dès que possible)

Bref, peu importe la taille de l'alerte, mes informations ne s'étirent jamais et finissent par être coupées.

Je peux réellement faire défiler le texte avec la molette de la souris, mais ce n'est pas bon.

L'image dit tout. Des idées sur la façon de contourner cela? Je ne peux pas imaginer que Alert ne gère tout simplement pas cela.

image ici:

http://img196.imageshack.us/img196/3/bigalert.png

(je suis encore un nouvel utilisateur, peut ne peut pas ajouter directement)

code:

var myAlert:Alert = Alert.show("The package you have selected includes a feature(s) you’ve already selected. \nWe have removed the individual features for you."); 
myAlert.height = 150*2; 
myAlert.width = 350*2; 
+0

Oui, quelque chose ne va vraiment pas avec la façon dont vous appelez Alert. Ça ne devrait pas s'étirer comme ça. Pouvez-vous coller du code? –

+0

Non pas que cela doive être fait, mais une solution de contournement pourrait être d'utiliser Panel ou TitleWindow à la place. Puisque vous êtes pressé .... –

+0

C'est probablement ce que je vais faire. Je me suis juste dit que je devais jeter cela pour essayer de comprendre le problème, et voir si une solution surgissait pendant que je travaillais sur mes autres éléments exceptionnels. – DrKippy

Répondre

0

solution rapide et sale.

import mx.core.mx_internal; 
use namespace mx_internal; 

private function showAlert():void { 
    var myAlert:Alert = Alert.show("The package you have selected includes a feature(s) you’ve already selected. \nWe have removed the individual features for you."); 
    myAlert.height = 150*2; 
    myAlert.width = 350*2; 
    callLater(function():void { 
     var textField:IUITextField = IUITextField(myAlert.mx_internal::alertForm.mx_internal::textField); 

     var textFormat:TextFormat = new TextFormat(); 
     textFormat.align = "center"; 

     textField.width = myAlert.width; 
     textField.x = 0; 
     textField.setTextFormat(textFormat); 
    }); 
} 
+0

Je vais devoir revenir en arrière et essayer ceci pour voir si cela fonctionne (j'ai juste hacked une solution de contournement de TitleWindow, mais cela semble que cela fonctionnerait). – DrKippy

Questions connexes