2011-04-29 1 views
0

Afin d'améliorer l'expérience utilisateur, nous voulons la possibilité d'avoir un MovieClip animé d'une rotation hélicoïdale et ont la possibilité de faire glisser et déposer partout sur une zone définieflex: possibilité de faire glisser + déposer un MovieClip

Nous avons construit la roue en rotation comme un fichier swc.

Comment faire le glisser-déposer. Les exemples que j'ai vus ne concernent que l'abandon d'images. Merci encore

Répondre

1

Pour utiliser les classes Flex pour glisser-déposer, vous devez envelopper ce MovieClip dans un UIComponent; qui a tous les événements liés au glisser-déposer.

Voici quelques good instructions. Pour copier les éléments pertinents:

Faire un composant Draggable

  1. Ajouter écouteur pour MouseEvent.MOUSE_DOWN
  2. initiateur glisser Déterminer et intercellulaire à DragManager

Pour lancer une drag-n-drop, vous aurez besoin de un MouseEvent pour que le composant soit déplacé.

public function makeDraggable(component:IUIComponent):void 
{ 
    // a mouseDown event will start the drag 
    component.addEventListener(MouseEvent.MOUSE_DOWN, beginDrag); 
} 

public function beginDrag(mouseEvent:MouseEvent):void 
{ 
    // the drag initiator is the object being dragged (target of the mouse event) 
    var dragInitiator:IUIComponent = mouseEvent.currentTarget as IUIComponent; 

    // the drag source contains data about what's being dragged 
    var dragSource:DragSource = new DragSource(); 

    // ask the DragManger to begin the drag 
    DragManager.doDrag(dragInitiator, dragSource, mouseEvent, null); 
} 
+0

Je suis maintenant Action de grâce le fais pour une image- Understand, je dois simplement créer un conteneur d'interface utilisateur et de placer mon swc en ce que- et la même logique glisser-déposer pour l'image sera applicable pour cette interface utilisateur récipient. – RG1967

1

Vous devez spécifier le dragProxy pour le movieClip pour contenir une instance de celui-ci au lieu d'une image fixe.

Questions connexes