flex – 从右边填充HBox? VBox从底部?
发布时间:2020-12-15 01:48:48 所属栏目:百科 来源:网络整理
导读:我只是真的需要HBox的答案,但想想如果我们在这里得到一个好的答案,它会帮助任何人试图用VBox做类似的事情.在actionscript和M XML中都知道这一点会很高兴. 所以我有一个HBox,我希望从左边对齐一些文本,从右边对齐一些无线电.像这样: _______________________
我只是真的需要HBox的答案,但想想如果我们在这里得到一个好的答案,它会帮助任何人试图用VBox做类似的事情.在actionscript和M
XML中都知道这一点会很高兴.
所以我有一个HBox,我希望从左边对齐一些文本,从右边对齐一些无线电.像这样: ___________________________________________________ | | |Text Yes () No() | |___________________________________________________| 我目前这样做是通过在文本和无线电之间放置一个宽度为100%的隐形盒子,就像这样 _____ __________________________________ ________________ | | | | |Text | invisible box percentWidth=100; | Yes () No() | |_____|__________________________________|________________| 我宁愿让他们自己的HBox中的无线电正确对齐如下: _____ ________________________________________________________ | | | |Text | Yes () No() | |_____|________________________________________________________| 我已经看到一些帖子谈论了一个horizo??ntalAlign属性,但我没有在文档中看到它. 那我该怎么做呢? 谢谢 解决方法
VBox和HBox组件上有一个horizo??ntalAlign属性和一个verticalAlign属性(它继承自Box).它们确定组件子项的水平和垂直对齐方式.
我通常使用Spacer对象,就像Sam提到的那样.但是对于你想要做的事情,这将是很好的. 在MXML中,您可以执行以下操作: <mx:RadioButtonGroup id="yesNoRadioGroup"/> <mx:HBox id="containingHBox" width="100%"> <mx:Text id="textElement" width="200" text="lakdfa lkadslkjraklnd kadflk lakdsjlkja lksdlkjdflk jalkdlkjdfslksajdf lkjasdflkjdsalkjds lksdjlkj"/> <mx:HBox id="rightAlignedHorizontalContent" width="100%" horizontalAlign="right"> <mx:RadioButton id="yesRadio" label="Yes" groupName="yesNoRadioGroup"/> <mx:RadioButton id="noRadio" label="No" groupName ="yesNoRadioGroup"/> </mx:HBox> </mx:HBox> 请注意,具有horizo??ntalAlign集的HBox必须具有宽度值,否则,它将仅足够宽以容纳其子宽度,在这种情况下,对齐没有实际意义. 这是一个AS版本: <mx:Script> <![CDATA[ import mx.controls.RadioButton; import mx.controls.RadioButtonGroup; import mx.controls.Text; private var containingHBox:HBox; private var textElement:Text; private var rightAlignedHorizontalContent:HBox; private var yesNoRadioGroup:RadioButtonGroup; private var yesRadio:RadioButton; private var noRadio:RadioButton; override protected function createChildren():void { super.createChildren(); containingHBox = new HBox(); containingHBox.percentWidth = 100; textElement = new Text(); textElement.width = 200; textElement.text = "lakdfa lkadslkjraklnd kadflk lakdsjlkja lksdlkjdflk jalkdlkjdfslksajdf lkjasdflkjdsalkjds lksdjlkj"; rightAlignedHorizontalContent = new HBox(); rightAlignedHorizontalContent.percentWidth = 100; rightAlignedHorizontalContent.setStyle("horizontalAlign","right"); yesNoRadioGroup = new RadioButtonGroup(); yesRadio = new RadioButton(); yesRadio.label = "Yes"; yesRadio.groupName = "yesNoRadioGroup"; noRadio = new RadioButton(); noRadio.label = "No"; noRadio.groupName = "yesNoRadioGroup"; addChild(containingHBox); containingHBox.addChild(textElement); containingHBox.addChild(rightAlignedHorizontalContent); rightAlignedHorizontalContent.addChild(yesRadio); rightAlignedHorizontalContent.addChild(noRadio); } ]]> </mx:Script> (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |