2009-08-25 8 views
0

Ich habe ein Flex-Projekt, das von bis zu mehreren benutzerdefinierten Komponenten gefertigt, die auf von Tree zu AdvancedDataGridVBox mit Listen von irgendeiner Form oder Art und Weise hin meist basieren. Meine Hauptansicht besteht aus zwei Komponenten, die eine kundenspezifische ein Tree und andere ein AdvancedDataGrid enthalten.Flex Drag n Drop zwischen Komponenten

den Standard mithilfe von integrierten in d-n-d in jenen Komponenten, bin ich nicht in der Lage d-n-d durchzuführen. So implementierte ich d-n-d mit DragManager und die notwendigen Ereignisse (mouseDown, dragEnter und dragDrop) auf diesen Komponenten und das funktioniert. Dieser Ansatz scheint jedoch die anderen Ereignisse wie Doppelklick- und Rechtsklickaktionen zu komplizieren.

Gibt es eine Lösung zu haben nativen d-n-d mit diesem Ansatz?

LeftSide.mxml:

<VBOX> 
<Tree/> 
</VBOX> 

RightSide.mxml:

<VBOX> 
<AdvancedDataGrid/> 
</VBOX> 

main.mxml:

<Application> 
<HBOX> 
<LeftSide/> 
<RightSide/> 
</HBOX> 
</Application> 

Antwort

0

Ich glaube nicht so .... Aber was Ich habe vor langer Zeit nur den Ziehvorgang gestartet, wenn der Benutzer die Maus gedrückt hält und sie für eine gewisse Zeit oder Zeit gedrückt hat habe es eine bestimmte Entfernung. Ich kann mich nicht an die Einzelheiten erinnern, aber ich werde versuchen herauszufinden, wie ich es bald geschafft habe.

+0

Sorry, ich habe lange die alten Schleppen Methode mit einer benutzerdefinierten Listensteuerung ersetzt. Würde das Erstellen eines DraggableTreeControl, das das Ziehen implementiert, eine praktikable Lösung sein? – Aethex

+0

Es könnte ... würde ich auch ein DraggableAdvancedDataGrid (oder was auch immer) für andere Ende oder nur den Ziehinitiator erstellen? Gibt es auch etwas Besonderes, das in das DragDrop-Ereignis gehen muss, um zu sehen, wo in der Drop-Liste das Element gelöscht wurde? – Los

+0

diese Webseite ansehen: http://www.adobe.com/devnet/flex/quickstart/adding_drag_and_drop/ Sie wahrscheinlich die meisten davon wissen, aber es könnte nützlich sein. Versuchen Sie auch, die Quelle des List-Steuerelements zu betrachten, das integrierte Drag/Drop-Unterstützung bietet. Was den DraggableAdvancedDataGrid, wahrscheinlich, aber es hängt von den verschiedenen Einrichtungen, die Advanced bereits. – Aethex