Set Flex-Komponente der Breite bis zu 100% bei der Laufzeit?
Wenn ich Schaffe sagen, ein input-Feld durch MXML
kann ich setzen Sie die Breite auf 100%
. Aber ich kann nicht scheinen, um dies zur Laufzeit durch ActionScript.
Dies funktioniert:
<mx:TextInput ... width="100%" />
Diese nicht kompilieren, sagt, die Breite ist eine Zahl, kein string:
var textinp:TextInput = new TextInput();
someContainer.addChild(textinp);
textinp.width = "100%"
Wie kann ich 100%
wie die Größe einer Komponente zur Laufzeit per ActionScript?
InformationsquelleAutor der Frage davr | 2009-06-25
Du musst angemeldet sein, um einen Kommentar abzugeben.
Müssen Sie nur verwenden Sie den
percentWidth
- Attribut, anstelle derwidth
Attribut.So, in der Dritten Zeile in deinem code wäre :
Dieser stolperte, mich für eine Weile, zu.
InformationsquelleAutor der Antwort Ross Henderson
Wenn Sie später möchten, wechseln Sie zurück zur pixel-basierten breiten für die gleiche Komponente, hier ist, was Sie zu tun haben:
InformationsquelleAutor der Antwort Daniel Brockman
Die obige Antwort richtig ist, aber ich kann nicht kommentieren, es coz ich bin zu neu, um SO.
Wenn Sie möchten, um diese Funktionalität hinzufügen, um eine benutzerdefinierte Komponente, die Sie tun können, so etwas wie dieses:
Natürlich, wenn Sie tun es für die Breite, Container-Unterklassen sind auf der Suche für percentWidthund nicht überprüfen die metada, so nennen Sie es nicht widthInPercent oder so, obwohl Sie können.
InformationsquelleAutor der Antwort
Hier ist die Antwort:
InformationsquelleAutor der Antwort Adrian Pirvulescu