强制子组件调整自身大于其容器的大小

时间:2010-03-29 23:41:04

标签: flex layout components containers

我正在创建一个显示可变数量“量表”的组件(如果你愿意的话,还会显示内容的方块),如下所示:

   <HDividedBox id="container">
    <VBox id="myComponent">
     <HBox id="header">
      ...header content...
     </HBox>
     <Tile id="body">
      ...gauges are added to the body...
     </Tile>
    </Vbox>
   </HDividedBox>

身体瓷砖有一个水平方向。当我拖动HDividedBox以使myComponent变小时,主体组件也将变小,并且最终如果有太多的量规适合水平放置,它们将被撞到下一行,因此我做的myComponent越小,数量越多垂直堆叠的仪表增长。

这一切都很好。问题是,无论我使用什么组合设置,我绝对不能让身体(一个平铺)的大小超出myComponent的大小,这将理想地导致myComponent垂直滚动。即使将身体的maxHeight设置为某个巨大的值,它也不会比它的容器更大。

关于如何实现这一目标的任何想法?

由于

1 个答案:

答案 0 :(得分:0)

如果您强制使用VBox或HDividedBox的高度,然后设置Tile scoll策略并继续向其添加组件,您最终会看到一个滚动条

<mx:HDividedBox x="400" y="300" width="200" height="150">
    <mx:VBox width="100%" height="100%" >
        <mx:HBox width="100%" height="100%">
                        <mx:Button label="Header"/>
                        <mx:Button label="Header"/>
        </mx:HBox>
            <mx:Tile verticalScrollPolicy="on" width="100%">
                        <mx:Button label="Gauge"/>
                        <mx:Button label="Gauge"/>
                        <mx:Button label="Gauge"/>
                        <mx:Button label="Gauge"/>
                        <mx:Button label="Gauge"/>
                        <mx:Button label="Gauge"/>
                        <mx:Button label="Gauge"/>
                        <mx:Button label="Gauge"/>
                        <mx:Button label="Gauge"/>
                        <mx:Button label="Gauge"/>
                        <mx:Button label="Gauge"/>
            </mx:Tile>
    </mx:VBox>
</mx:HDividedBox>