Veröffentlicht 11. April 200223 j Hallo, ich habe einen JTree dessen TreeNodes editierbar sein sollen. Jetzt habe ich den Tree mit setEditable(true) so eingestellt, dass dies geschieht. Ich möchte das aber auch von einem Kontextmenü (rechte Maustaste->Popup) aus steuern können (so ähnlich wie Umbennenen im Windows Explorer). Wie triggere ich das editieren von meinem Sourcecode aus? Timo
12. April 200223 j Das kommt auch darauf an, was hinter deinen TreeNodes steckt. Enthalten deine Nodes nur einfache Strings oder stecken richtige Objekte (Modelle) dahinter? Snowghost
12. April 200223 j Du bekommst von deinem ausgewählten TreeNode über die Methode getUserObject das eigentliche Objekt (als java.lang.Object). Dieses kannst du auf dein entsprechendes Objekt (z.B. String) überprüfen und casten. Dann musst du nur noch den Wert des Objektes ändern, der in dessen toString-Methode zurückgegeben wird. Bsp.: // node: aktuell ausgewählter TreeNode // XY: Klasse, auf die gecastet werden soll if (node.getUserObject() instanceof XY) { XY xy = (XY) node.getUserObject(); // hier muss eine entsprechende Methode aufgerufen werden. xy.setValue("Neuer Wert"); } Hoffe, es war verständlich. Snowghost
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.