我想限制flex组件的高度到浏览器视口的高度。如何将Flex组件的高度绑定到浏览器窗口的高度?
组件的子项使用中继器从数据库表填充,并且是基本复选框。有足够的Flex应用程序最终大约是屏幕高度的两倍,这意味着其他一些布局对我来说很糟糕。我如何强制包含这些的组件将自身限制为视口的大小?
我想限制flex组件的高度到浏览器视口的高度。如何将Flex组件的高度绑定到浏览器窗口的高度?
组件的子项使用中继器从数据库表填充,并且是基本复选框。有足够的Flex应用程序最终大约是屏幕高度的两倍,这意味着其他一些布局对我来说很糟糕。我如何强制包含这些的组件将自身限制为视口的大小?
如果我理解您的问题,您希望获得浏览器窗口的客户区大小,这与您的Flex应用程序的大小相同。
所以,只要使用Application.application.width和Application.application.height
你应该听的是改变了应用程序的大小,使像
if (component.width > Application.application.width)
component.width = Application.application.width
的事件可能会比较事件成为stage.addEventListener(Event.RESIZE, onStageResize)
将组件高度设置为100%应该是您所需要的。
在MXML:
<mx:Vbox height="100% />
在动作:
myVBox.percentHeight = 100;
如果组件的内容占用比更多的可用空间,屏幕上的组件应该提供自己的滚动条保持组件高度相同。如果情况并非如此,那么如果您发布代码,这将有所帮助。
您可以设置组件视 的高度,说:
的ActionScript:
component.height = viewport.height;
MXML:
<mx:component height={viewport.height} />
设置了minHeight和minWidth为您的容器0:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" width="100%" height="100%">
<mx:HBox width="100%" height="100%">
<mx:HBox width="20%" height="100%">
<mx:Label text="Left Panel"/>
</mx:HBox>
<mx:VBox width="100%" height="100%" minWidth="0" minHeight="0">
<mx:CheckBox label="1" />
<mx:CheckBox label="2" />
<mx:CheckBox label="3" />
<mx:CheckBox label="4" />
<mx:CheckBox label="5" />
<mx:CheckBox label="6" />
<mx:CheckBox label="7" />
<mx:CheckBox label="8" />
<mx:CheckBox label="9" />
<mx:CheckBox label="10" />
<mx:CheckBox label="11" />
<mx:CheckBox label="12" />
<mx:CheckBox label="13" />
<mx:CheckBox label="14" />
<mx:CheckBox label="15" />
<mx:CheckBox label="16" />
<mx:CheckBox label="17" />
<mx:CheckBox label="18" />
<mx:CheckBox label="19" />
<mx:CheckBox label="20" />
</mx:VBox>
<mx:HBox width="20%" height="100%">
<mx:Label text="Right Panel"/>
</mx:HBox>
</mx:HBox>
</mx:Application>