# Drag and Drop-Möglichkeit wird von Komponenten verdeckt!



## Düark (21. Feb 2007)

Hi Leute,
ich habe einen JFrame mit einer Tabelle und einem Baum.

Der JFrame implementiert nen DropTargetListener so dass man Dateien reinziehen kann, die dann verarbeitet werden.
Am Anfang sind Tabelle und Baum noch leer und man kann auch in diesen Bereich droppen, nachdem diese aber gefüllt sind, geht das nicht mehr, sondern nur noch auf "freie Flächen" des JFrames.

Gibts ne Möglichkeit, das zu ändern, ohne die Drag & Drop-funktionalität in allen anderen Components implementieren zu müssen?

Gruss
Düark


----------



## Marco13 (21. Feb 2007)

Die Beschreibung ist etwas dünn - falls du kein compilierbares(!) Beispiel posten kannst, nur ein bißchen Fischen im trüben: Eventuell sollte NUR die Zielkomponente ein DropTargetListener sein (d.h. der Baum oder die Tabelle). Wenn das nicht geht oder nicht gewünscht ist, kannst du aber vermutlich eine GlassPane verwenden, die ein DropTargetListener ist.
http://java.sun.com/docs/books/tutorial/uiswing/components/rootpane.html
Die GlassPane liegt über allen Components, und kann damit theoretisch auch alles abfangen, was in den Frame gedroppt wird. Wie genau das gehen würde, müßte ich aber ggf. auch erst austesten.


----------



## Düark (22. Feb 2007)

Das hat funktioniert!
Habe jetzt einfach nur im JFrame getGlassPane().setVisible(true) gemacht, und dann ein neues DropTarget mit dem GlassPane anstelle des JFrames erstellt.
new DropTarget(getGlassPane(), this);
Das wars! 
Ist auf jeden Fall auch bei anderen Sachen praktisch!

Danke!

Dirk


----------

