我希望能够根据条件阻止拖动HDividedBox的分频器。例如:
<mx:HDividedBox id="hd1" liveDragging="true" dividerDrag="dividerDragHandler(event)"> <Canvas id="c1"/> <Canvas id="c2"/> </HDividedBox> private function dividerDragHandler(event:DividerEvent):void { if (_something > 10) { event.preventDefault(); } }
我有什么想法可以做那样的事情吗?而且我宁愿不要弄乱儿童画布的宽度。感谢。
答案 0 :(得分:1)
可能不理想,但here's a hack隐藏了flexexamples的分隔符控件。
答案 1 :(得分:0)
您可以在画布上设置minWidth
。试试吧。
DividerEvent将在HBox中的MouseEvent.MOUSE_MOVE
上发送,而忽略preventDefault()
或stopImmediatePropagation()
,因此这些方法在那里不会做太多。这有效:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application
xmlns:mx="http://www.adobe.com/2006/mxml">
<mx:HDividedBox id="hd1" liveDragging="true">
<mx:Panel width="100" minWidth="40" id="c1"/>
<mx:Panel width="200" minWidth="100" id="c2"/>
</mx:HDividedBox>
</mx:Application>
答案 2 :(得分:0)
我还发现你可以通过将horizontalGap样式值设置为零来有效地删除拖动句柄并禁用HDividedBox或VDividedBox的大小调整。