Habi Geschrieben 11. April 2002 Geschrieben 11. April 2002 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 Zitieren
Snowghost Geschrieben 12. April 2002 Geschrieben 12. April 2002 Das kommt auch darauf an, was hinter deinen TreeNodes steckt. Enthalten deine Nodes nur einfache Strings oder stecken richtige Objekte (Modelle) dahinter? Snowghost Zitieren
Habi Geschrieben 12. April 2002 Autor Geschrieben 12. April 2002 Strings wären schon mal ok! Timo Zitieren
Snowghost Geschrieben 12. April 2002 Geschrieben 12. April 2002 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 Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.