cast von TreePath nach DefaultMutableTreeNode

  • Themenstarter Themenstarter Watto
  • Beginndatum Beginndatum
Status
Nicht offen für weitere Antworten.
W

Watto

Gast
Hallo,

im folgenden ein Handler aus einem MVC Entwurfsmuster. Es geht darum die Methode removeObject des Models aufzurufen. Diese Methode hat die Aufgabe den markierten Knoten des JTrees und alle seine Nachfolger auf dem JTree zu entfernen. die mit dem Kommentar versehene Zeile funktioniert so nicht. Könnt ihr mir sagen wie ich sie modifizieren muss?

Gibt es irgendeine Möglichkeit ein Objekt vom Typ TreePath in ein Objekt vom Typ DefaultMutableTreeNode zu casten?

Code:
import javax.swing.*;
import java.awt.event.*;
import javax.swing.tree.*;


public class HandlerRemoveItem implements ActionListener
{
	Model model;
	JTree tree;
	
	public HandlerRemoveItem(Model model, JTree tree)
	{
		this.model = model;
		this.tree = tree;	
	}
	
	public void actionPerformed(ActionEvent evt)
	{
		// model.removeObject((DefaultMutableTreeNode) tree.getSelectionPath().);
	}
}
 
Ein Pfad wird wohl kaum ein Node sein... Nimm das letzte Element des TreePaths, das kannst du eher casten.
(getLastPathComponent glaube ich, sonst guck in der API nach)
 
Wie bereits erwähnt kannst du den Path natürlich nicht in den Node casten ... Du kannst dir allerdings mit getLastPathComponent() das letzte, bzw mit getPathComponent(int index) ein bestimmtes Element aus dem Path zurückgeben lassen. Dieses Object kannst du dann in den Node casten.
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben