- Registriert
- 15.09.09
- Beiträge
- 2.169
Hey,
ich habe da ein etwas schwer zu beschreibendes GUI Problem wenn ich in Java mit Drag and Drop arbeite...
Ich dafür das java.awt.dnd.* Package.
Mein Problem liegt nun darin das alles super funktioniert das ganze nur blöd aussieht, denn wenn ich etwas "droppe" dann landet das Objekt auch da wo es soll aber es geht ebenso wieder zurück zu der DragSource aber eben nur auf der GUI.
Ich weiß womit es zu tun haben könnte aber sicher bin ich mir nicht.
Ich vermute das es mit den java.awt.dnd.DnDConstants zusammenhäng. Denn wenn ich den DragGestureListener so zusammen bastel:
Ist es das gleiche als würde ich das das so schreiben:
Würde ich aber DndConstants.ACTION_NONE benutzen geht kein Drag and Drop
Diese Methode wird aufgerufen wenn man das Object "dragt":
Wenn ich den Cursor änder passiert ebenso nichts, könnte auch null bei startDrag pbergeben Ergebnis ist identisch
Java Version:
ich habe da ein etwas schwer zu beschreibendes GUI Problem wenn ich in Java mit Drag and Drop arbeite...
Ich dafür das java.awt.dnd.* Package.
Mein Problem liegt nun darin das alles super funktioniert das ganze nur blöd aussieht, denn wenn ich etwas "droppe" dann landet das Objekt auch da wo es soll aber es geht ebenso wieder zurück zu der DragSource aber eben nur auf der GUI.
Ich weiß womit es zu tun haben könnte aber sicher bin ich mir nicht.
Ich vermute das es mit den java.awt.dnd.DnDConstants zusammenhäng. Denn wenn ich den DragGestureListener so zusammen bastel:
Code:
new DragSource().createDefaultDragGestureRecognizer(this, DnDConstants.ACTION_MOVE, this);
Ist es das gleiche als würde ich das das so schreiben:
Code:
new DragSource().createDefaultDragGestureRecognizer(this, DnDConstants.ACTION_COPY, this);
Würde ich aber DndConstants.ACTION_NONE benutzen geht kein Drag and Drop
Diese Methode wird aufgerufen wenn man das Object "dragt":
Code:
@Override
public void dragGestureRecognized(DragGestureEvent dge) {
if (dge.getDragAction() == DnDConstants.ACTION_MOVE) {
Cursor cursor = DragSource.DefaultMoveDrop;
dge.startDrag(cursor, getResizedComponentImage(), new Point(18, 18), this, null);
}
}
Wenn ich den Cursor änder passiert ebenso nichts, könnte auch null bei startDrag pbergeben Ergebnis ist identisch
Java Version: