2009-03-07 2 views
0

Я получаю скорость с помощью Flex, и я ищу любой пример реализации перетаскивания перетаскивания в контейнере vbox. В основном у меня есть Vbox, который содержит несколько холстов, которые имеют полную ширину и высоту 35 пикселей. Я хочу, чтобы иметь возможность перетаскивать их, чтобы переупорядочить в vbox.Как я могу перетаскивать холсты в Vbox для повторного заказа?

Любая помощь очень ценится - спасибо,

б

ответ

0

Вы пробовали использовать тй: 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> 

И Eсть конечно больше информации здесь: http://livedocs.adobe.com/flex/3/langref/mx/controls/List.html

удачи!

+0

Спасибо всем, все комментарии были полезными. Я пришел с помощью пользовательского itemRenderer в списке, чтобы решить свои проблемы. – WillyCornbread

0

Если бы я тебя, я бы сначала проверить документацию Flex доступны в Интернете. Пример this. Вам нужно будет настроить его для элемента itemeditor элемента управления списком. Есть еще example, на который вы должны взглянуть. Если у вас есть проблема, сообщите нам об этом.

+0

Спасибо - проблема, с которой я сталкиваюсь, заключается в том, что все примеры основаны на списках, которые мои vbox не являются, или имеют дело только с простым перетаскиванием. Мне нужно больше узнать о том, как выбрать кусок и переделать его. – WillyCornbread

+0

Укажите код и фактическую ошибку. – dirkgently

+0

Это концепция вычисления пятна падения и вставка в vbox в этой позиции - я пытаюсь использовать событие dragOver в настоящее время, но вычисление позиции холста для определения пятна, которое нужно удалить, - это моя проблема. – WillyCornbread

Смежные вопросы