如何安排Flex组件正确滚动

时间:2012-03-23 16:08:09

标签: flex layout

在下面的代码中,我有一个大型组件,我只希望level4面板可以滚动,而是整个应用程序变得可滚动。

有什么建议吗?感谢

<?xml version="1.0" encoding="utf-8"?>
<mx:Application  xmlns:mx="http://www.adobe.com/2006/mxml">
<mx:Panel width="100%" height="100%" title="level1">
    <mx:Panel width="100%" height="100%" title="level2">
        <mx:HDividedBox width="100%" height="100%">

            <mx:TextArea width="200" height="100%"/>
            <mx:Panel width="100%" height="100%" title="level3">
                <mx:ApplicationControlBar width="100%" dock="true">
                    <mx:Spacer width="30"/>
                    <mx:LegendItem  width="80" height="20" fill="#CC9900" label="test1"/>

                </mx:ApplicationControlBar>
                <mx:Panel width="100%" height="100%" title="level4">
                    <mx:UIComponent width="2000" height="2000"/>
                </mx:Panel>
            </mx:Panel>
        </mx:HDividedBox>
    </mx:Panel>
</mx:Panel>
</mx:Application>

如果我设置ScrollPolicy,则不会显示任何滚动条。请检查以下内容,谢谢。

<?xml version="1.0" encoding="utf-8"?>
<mx:Application  xmlns:mx="http://www.adobe.com/2006/mxml" horizontalScrollPolicy="off" verticalScrollPolicy="off">
<mx:Panel width="100%" height="100%" title="level1" horizontalScrollPolicy="off" verticalScrollPolicy="off">
    <mx:Panel width="100%" height="100%" title="level2" horizontalScrollPolicy="off" verticalScrollPolicy="off">
        <mx:HDividedBox width="100%" height="100%">

            <mx:TextArea width="200" height="100%"/>
            <mx:Panel width="100%" height="100%" title="level3" horizontalScrollPolicy="off" verticalScrollPolicy="off">
                <mx:ApplicationControlBar width="100%" dock="true">
                    <mx:Spacer width="30"/>
                    <mx:LegendItem  width="80" height="20" fill="#CC9900" label="test1"/>

                </mx:ApplicationControlBar>
                <mx:Panel width="100%" height="100%" title="level4" horizontalScrollPolicy="auto"  verticalScrollPolicy="auto">
                    <mx:UIComponent width="2000" height="2000"/>
                </mx:Panel>
            </mx:Panel>
        </mx:HDividedBox>
    </mx:Panel>
</mx:Panel>
</mx:Application>

2 个答案:

答案 0 :(得分:1)

为level4面板设置layout =“absolute”。

答案 1 :(得分:0)

您可以为每个面板更改.verticalScrollBarPolicy的值,为不应滚动的面板设置为"off",为面板设置为"on""auto"应该滚动。如果您还需要.horizontalScrollBarPolicy参数,也可以使用{{1}}参数。