HBox儿童组件分离器

时间:2010-08-01 12:55:04

标签: flex flex3 hbox

如何在HBox子组件周围添加分隔线?

就像我选择bordertyle作为hbox的实体一样,问题是子组件之间的界限,比如文本组件,我可以以有效的方式显示它,而不仅仅是将HBox添加到每个元素。

1 个答案:

答案 0 :(得分:2)

HBox只是一个包含儿童水平布局的框 - 它实际上并没有在这些孩子之间运行垂直线,所以你无法在HBox上使用边框或任何东西

您最好的选择可能是在每个子组件之间添加VRule个组件,例如:

<mx:HBox width="100%" borderColor="#000000" borderStyle="solid">
    <mx:Image />
    <mx:VRule height="100%" strokeColor="#000000" strokeWidth="1"/>
    <mx:Image />
    <mx:VRule height="100%" strokeColor="#000000" strokeWidth="1"/>
    <mx:Image />
</mx:HBox>

您可以根据需要调整VRule和HBox边框样式以保持一致。我能想到的唯一其他选项是在HBox上没有边框的每个子组件周围放置边框(根据您的组件可能需要子填充),将所有组件嵌入到HBox中的Box组件中,就像您建议的那样或者做一些完全疯狂的事情,例如使用HorizontalList并将组件嵌入到具有边框的一致大小的自定义项呈示器中。

就个人而言,我只是使用VRule分隔符并继续前进。我宁愿对孩子们加倍,也不要让我感兴趣的所有组件在HBox中更深层次。如果您需要从变量数组等生成HBox子项,那么您可能希望将每个子项放在Box中并使用Repeater或其他内容。更多细节将有助于更具体的答案。