我正在快速使用Flex,我正在寻找在vbox容器中实现拖放重新排序的任何示例。基本上我有一个Vbox,其中包含一些全宽和35px高的画布。我希望能够拖放它们以在vbox中重新排序。
非常感谢任何帮助 - 谢谢,
B'/ P>
答案 0 :(得分:0)
答案 1 :(得分:0)
您是否尝试过使用mx:List - 拖放支持已经内置并且非常易于使用 - 我使用您提到的尺寸为您整理了一个样本:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="init()">
<mx:Script>
<![CDATA[
import mx.controls.Alert;
import mx.events.DragEvent;
import mx.collections.ArrayCollection;
[Bindable]
private var _source:ArrayCollection = new ArrayCollection();
private function init():void{
var n:int = 10;
for(var i:int = 0; i < n; i++){ _source.addItem({value:Math.random()}); }
}
private function handleReorder(event:DragEvent):void{
Alert.show("A change was made!");
}
]]>
</mx:Script>
<mx:List dataProvider="{_source}" width="250" height="500" dragMoveEnabled="true"
dragEnabled="true" dropEnabled="true" dragDrop="handleReorder(event)">
<mx:itemRenderer>
<mx:Component>
<mx:Canvas width="100%" height="35">
<mx:Text text="{data.value}" width="100%" height="100%" selectable="false" />
</mx:Canvas>
</mx:Component>
</mx:itemRenderer>
</mx:List>
</mx:Application>
当然有更多信息:http://livedocs.adobe.com/flex/3/langref/mx/controls/List.html
祝你好运!