2009-06-23 11 views
0

J'utilise mx.containers.Grid pour mettre en page certaines données et la dernière colonne est un ensemble de cases à cocher. MXML Extrait de code:Modifier la largeur de colonne dans la grille Flex

<mx:Grid width="95%" height="50%"> 
    <mx:GridRow id="row1"> 
    <mx:GridItem> 
     <mx:Label id="label1" ... /> 
    </mx:GridItem> 
    <mx:GridItem> 
     <mx:Label id="textValue1" ... /> 
    </mx:GridItem> 
    <mx:GridItem> 
     <mx:CheckBox id="checkBox1" /> 
    </mx:GridItem> 
    </mx:GridRow> 
    <mx:GridRow id="row2"> 
    <mx:GridItem> 
     <mx:Label id="label2" ... /> 
    </mx:GridItem> 
    <mx:GridItem> 
     <mx:Label id="textValue2" ... /> 
    </mx:GridItem> 
    <mx:GridItem> 
     <mx:CheckBox id="checkBox2" /> 
    </mx:GridItem> 
    </mx:GridRow> 
    <mx:GridRow id="row3"> 
    <mx:GridItem> 
     <mx:Label id="label3" ... /> 
    </mx:GridItem> 
    <mx:GridItem> 
     <mx:Label id="textValue3" ... /> 
    </mx:GridItem> 
    <mx:GridItem> 
     <mx:CheckBox id="checkBox3" /> 
    </mx:GridItem> 
    </mx:GridRow> 
</mx:Grid> 

Fondamentalement, je veux les étiquettes & valeurs de texte pour aligner cependant la composante de grille lui semble. Cependant, j'aimerais que les cases à cocher soient alignées à droite. J'ai essayé de régler la largeur des textValues ​​à 100% et cela ne fait rien. Je ne veux pas utiliser des valeurs de pixels/canevas/etc codés en dur car il est important que cela soit facile à changer/mettre à jour.

Répondre

0

J'ai trouvé une solution, mais c'est un peu un hack. Mais je vais le poster pour les personnes qui ont le même problème que moi:

<mx:Grid width="95%" height="50%"> 
    <mx:GridRow id="row1" width="100%"> 
    <mx:GridItem> 
     <mx:Label id="label1" ... /> 
    </mx:GridItem> 
    <mx:GridItem> 
     <mx:Label id="textValue1" ... /> 
    </mx:GridItem> 
    <mx:GridItem> 
     <mx:CheckBox id="checkBox1" width="100%" horizontalAlign="right" /> 
    </mx:GridItem> 
    </mx:GridRow> 
    <mx:GridRow id="row2" width="100%"> 
    <mx:GridItem> 
     <mx:Label id="label2" ... /> 
    </mx:GridItem> 
    <mx:GridItem> 
     <mx:Label id="textValue2" ... /> 
    </mx:GridItem> 
    <mx:GridItem> 
     <mx:CheckBox id="checkBox2" width="100%" horizontalAlign="right"/> 
    </mx:GridItem> 
    </mx:GridRow> 
    <mx:GridRow id="row3" width="100%"> 
    <mx:GridItem> 
     <mx:Label id="label3" ... /> 
    </mx:GridItem> 
    <mx:GridItem> 
     <mx:Label id="textValue3" ... /> 
    </mx:GridItem> 
    <mx:GridItem> 
     <mx:CheckBox id="checkBox3" width="100%" horizontalAlign="right"/> 
    </mx:GridItem> 
    </mx:GridRow> 
</mx:Grid> 

Fondamentalement, ajoutez « width = « 100% » » à chaque GridRow, puis ajoutez « width = « 100% » horizontalAlign = "right" 'à chaque GridItem que vous voulez aligner à droite.

0

Essayez également de définir la largeur de GridRow/GridItem sur 100%.

Questions connexes