Hallo, ich habe in meinem Programm einen JTree in dem per Drag and Drop die Tree Elemente verschoben werden können. Das funktioniert auch soweit, nur möchte ich am Ende einer Drag and Drop Aktion den Knoten an der alten Position natürlich löschen. Wenn ich dies mit removeFromParent mache, bleibt der Knoten jedoch vorhanden. Es scheint aber so als würde die Methode ausgeführt werden, da die (grafische) Verbindungsline zu dem darüberliegenden Knoten entfernt wird. Der Knoten selbst bleibt aber vorhanden und ist auch noch selectierbar.
Hat irgendjemand eine Idee woran das liegen könnte?
Hier noch die dragDropEnd Methode aus dem DragSourceListener des JTrees, hier wird das Löschen durchgeführt:
Hat irgendjemand eine Idee woran das liegen könnte?
Hier noch die dragDropEnd Methode aus dem DragSourceListener des JTrees, hier wird das Löschen durchgeführt:
Java:
public void dragDropEnd(DragSourceDropEvent arg0) {
// TODO Auto-generated method stub
System.out.println("DragSourceListener");
Transferable transferable = arg0.getDragSourceContext().getTransferable();
DataFlavor [] dataFlavors = transferable.getTransferDataFlavors();
for(int a = 0; a<dataFlavors.length; a++){
try {
Object transferData = transferable.getTransferData(dataFlavors[a]);
if(transferData.getClass() == CertificateTreeModel.class){
((CertificateTreeModel)transferData).removeFromParent();
}
} catch (Exception e) {
e.printStackTrace();
}
}
}