我有这样的问题:我正在创建一个容器,它是运行时的内容。这是一个粗略的结构:
--VBox
- - 形式
--------表单项
...
--------表单项
----控制栏
我已经为容器修复了 maxHeights 以将form
其保持在屏幕范围内。但是当我得到垂直滚动条时,也会出现水平滚动条(似乎这个 VScrollBar 的位置不够用)。
为了避免这个问题,我创建了一个水平滚动出现的监听器,所以如果它出现,我会增加一点容器,所以它会正常地支撑另一个滚动条:
form.addEventListener(Event.ADDED, function(event:Event):void{
if(event.target is HScrollBar){
while(form.horizontalScrollBar && form.horizontalScrollBar.visible && !(form.width > form.maxWidth)){
form.width += 10;
form.validateDisplayList();
}
}
});
我也尝试过validateNow
其他类似的方法。我在这里有什么: 1.HScrollBar
正在添加。2.我们增加一点容器的宽度,让它消失。3. 当它消失时,当它试图测量不存在的滚动条时,验证会抛出空指针异常。我也尝试validateProperties
在验证之前添加,但它也没有奏效。
任何人都可以帮助摆脱这个烦人的卷轴吗?:)