JTree, Problem mit View Update

Status
Nicht offen für weitere Antworten.

Sanix

Top Contributor
Ich habe einen JTree den ich instanziere mit einem Model. Dannach fülle ich das Model mit Daten, nur werden diese nicht angezeigt. Fülle ich das Model zuerst mit Daten und instanziere den Tree danach funktioniert es:

Java:
	private RuleTreeModel ruleTreeModel = new RuleTreeModel(new DefaultMutableTreeNode());

Java:
	private void generateTestData()
	{
		List<VariableRule> rules = new ArrayList<VariableRule>();
		VariableRule rule = new VariableRule();
		rule.setNewName("Bauteil");
		rule.addOldName("Buteil");
		rule.addOldName("nigga hou");
		rules.add(rule);
		rule = new VariableRule();
		rule.setNewName("Wasser");
		rule.addOldName("water");
		rule.addOldName("waser");
		rules.add(rule);
		ruleTreeModel.mapVariableRules(rules);
}

...
		ruleTree = new RuleTree(ruleTreeModel); 

...
		// ToDo Remove
		generateTestData();
		
		//Show main window
		pack();
		setVisible(true);

Model
Java:
	/**
	 * Adds a rule to the tree
	 * 
	 * @param rule
	 */
	public void addRule(VariableRule rule)
	{
		// Variables
		DefaultMutableTreeNode root = (DefaultMutableTreeNode) getRoot();
		DefaultMutableTreeNode child;
		NodeModel node;

		// Add checkbox node
		node = new NodeModel(rule.getNewName());
		child = new DefaultMutableTreeNode(node);
		// Add old values
		for (String oldName : rule.getOldNames())
		{
			child.add(new DefaultMutableTreeNode(oldName));
		}
		// Add them to the root tree
		root.add(child);
		
		//Update listeners
		for(TreeModelListener listener : getTreeModelListeners()){
			listener.treeNodesInserted(new TreeModelEvent(this, getPathToRoot(child)));
		}

	/**
	 * Expects a list of rules and turns them into a correct structure
	 * 
	 * @param rules
	 *            VariableRules or {@link VariableContentRule}
	 */
	public RuleTreeModel(List<VariableRule> rules)
	{
		super(new DefaultMutableTreeNode());

		// Normal variable rules
		mapVariableRules((List<VariableRule>) rules);
	}

	/**
	 * Maps {@link VariableRule} into nodes
	 * 
	 * @param rules
	 */
	public void mapVariableRules(List<VariableRule> rules)
	{
		// Each rule is a child including a checkbox
		for (VariableRule rule : rules)
		{
			addRule(rule);
		}
	}
 

André Uhres

Top Contributor
Ich nehme an, daß RuleTreeModel von DefaultTreeModel abgeleitet ist. Um einen Knoten im DefaultTreeModel einzufügen, ruft man entweder direkt insertNodeInto auf (und das Model wird den Kindknoten dem Vaterknoten einsetzen), oder man ruft nodesWereInserted auf, nachdem der Knoten eingefügt wurde.
 

Sanix

Top Contributor
Hallo André, ja sorry das habe ich nicht geschrieben aber deine Vermutung stimmt. Ich habe es jetzt geändert, leider mit demselber Resultat. Nach ein bisschen rumspielen ist mir folgendes aufgefallen:
Ich übergebe dem JTree jetzt zuerst ein Modell das null ist und setze es nachher neu mit setModel, welches bereits Daten enthält. Irgendwie funktioniert es so, wenn es auch nicht schön ist.
Danke für deine Hilfe!
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
K Problem: JTree mit integrierten JCheckboxen Java Basics - Anfänger-Themen 5
R Problem mit JTree und JTable Java Basics - Anfänger-Themen 16
G JTree Problem. Java Basics - Anfänger-Themen 5
G Problem mit Refresh von JTree Java Basics - Anfänger-Themen 11
G JTree Explorer Problem mit listRoots() Java Basics - Anfänger-Themen 9
G JTree speichern und wieder einlesen Java Basics - Anfänger-Themen 5
C Unbekannte Methode add bei Klasse die JTree erweitert Java Basics - Anfänger-Themen 14
J ActionListener von JCheckBox im Knoten von JTree funktioniert nicht Java Basics - Anfänger-Themen 2
F Jtree kürzt Namen auf ... Java Basics - Anfänger-Themen 4
H Collections JTree remove zeigt keinen Effekt! Java Basics - Anfänger-Themen 8
H Best Practice Wo wird der rootNode eines JTree gespeichert... Java Basics - Anfänger-Themen 0
H Erste Schritte JTree: Instanzen einer Klasse speichern oder Namen/Strings... Java Basics - Anfänger-Themen 4
R JTree bewegen Java Basics - Anfänger-Themen 6
I JTree, Root-Name ändern Java Basics - Anfänger-Themen 4
N Dynamisch JTree erstellen Java Basics - Anfänger-Themen 3
G bestimmte dateiendungen in jtree rausfiltern Java Basics - Anfänger-Themen 7
P JTree aus txt Java Basics - Anfänger-Themen 8
M Warum wird mein Icon bei den JTree Nodes nicht angezeigt? Java Basics - Anfänger-Themen 7
JStickman JTree, JScrollPane, Liste mit graphischer Suchleiste - Dateimanager Java Basics - Anfänger-Themen 10
M JTree + JTab Java Basics - Anfänger-Themen 3
T JTree füllen Java Basics - Anfänger-Themen 3
B JTree knoten wird nicht übernommen Java Basics - Anfänger-Themen 4
S JTree Hilfe Java Basics - Anfänger-Themen 6
P Jtree MouseListener und NoCollapse Java Basics - Anfänger-Themen 2
M JTree ohne root anzeigen Java Basics - Anfänger-Themen 5
F JTree mit JSpinner Java Basics - Anfänger-Themen 2
I Liste von Dateien anzeigen/JTree Java Basics - Anfänger-Themen 4
G Zugriff auf JTree-Objekt Java Basics - Anfänger-Themen 2
B OOP Jtree aus TreeMap<String, String[]> erstellen? Java Basics - Anfänger-Themen 6
D JTree ich dreh durch :D Java Basics - Anfänger-Themen 2
T JTree root setzten Java Basics - Anfänger-Themen 13
G xml Datei in JTree Java Basics - Anfänger-Themen 2
A JTree drucken Java Basics - Anfänger-Themen 2
M JTree und ein Button mit ActionListener Java Basics - Anfänger-Themen 3
G Verständnisproblem --> JTree Java Basics - Anfänger-Themen 6
G Filesystem in JTree anzeigen Java Basics - Anfänger-Themen 4
A Jtree Aufbau Java Basics - Anfänger-Themen 5
G JTree ilstener Java Basics - Anfänger-Themen 3
G JTree Java Basics - Anfänger-Themen 2
G Erstellten JTree aus einer XML-Datei akktualisieren Java Basics - Anfänger-Themen 11
S jTree initialisierung Java Basics - Anfänger-Themen 4
F Doppelklick-Event auf JTree Java Basics - Anfänger-Themen 5
J ArrayListen mit Name und Vater an JTree übergeben Java Basics - Anfänger-Themen 3
G aussehen vom jtree wiederherstellen Java Basics - Anfänger-Themen 3
P JTree mit mehreren Wurzeln Java Basics - Anfänger-Themen 2
G Umbenennen im JTree Java Basics - Anfänger-Themen 5
G rechter Mausklick im JTree Java Basics - Anfänger-Themen 2
G Bilder im jTree Java Basics - Anfänger-Themen 3
G jTree Pfad merken Java Basics - Anfänger-Themen 2
S JTree aktualisieren Java Basics - Anfänger-Themen 4
M JTree aktualisieren Java Basics - Anfänger-Themen 3
E JTree - Element suchen Java Basics - Anfänger-Themen 5
G JTree Java Basics - Anfänger-Themen 2
E JTree - Verzeichnisbaum Java Basics - Anfänger-Themen 3
G JTree Frage Java Basics - Anfänger-Themen 5
G Ebene von JTree ermitteln? Java Basics - Anfänger-Themen 6
G Icons für JTree skalieren? Java Basics - Anfänger-Themen 3
G Standard JTree ausblenden? Java Basics - Anfänger-Themen 5
B JTree mit Verzeichnissen füllen Java Basics - Anfänger-Themen 17
G Object vor reload von JTree merken und danach wieder setzen? Java Basics - Anfänger-Themen 5
P Wert aus JTree in ComboBox setzen? Java Basics - Anfänger-Themen 2
lomtas Scrollbalken für JTree Java Basics - Anfänger-Themen 3
lomtas JTree Struktur im Nachhinein ändern Java Basics - Anfänger-Themen 2
K JTree verlinken Java Basics - Anfänger-Themen 3
T ArrayList mit Dateien in die richtigen Ordner eines JTree Java Basics - Anfänger-Themen 16
K JTree aus DB rekursiv füllen Java Basics - Anfänger-Themen 12
M Dateisystem in Jtree - Ordnericon darstellen Java Basics - Anfänger-Themen 4
G JTree vollständigen pfad anzeigen Java Basics - Anfänger-Themen 11
R JTree aus einer ArrayList Java Basics - Anfänger-Themen 9
J JTree Bilder Java Basics - Anfänger-Themen 2
G JTree.TreeListener Java Basics - Anfänger-Themen 12
S JTree valueChanged() Ausgabe leider immer mit Pfadangabe! Java Basics - Anfänger-Themen 4
S JTree aktualisieren bzw. komplett neu aufbauen Java Basics - Anfänger-Themen 6
G Scrollen im JTree Java Basics - Anfänger-Themen 17
G Hintergrundsfarbe für JTree Java Basics - Anfänger-Themen 15
F JTree-Knoten (DefaultMutableTreeNode) formatieren ? Java Basics - Anfänger-Themen 3
Y JTree: ein Knoten als Objekt Java Basics - Anfänger-Themen 2
J JTable / JTree: Unsichtbare Elemente Java Basics - Anfänger-Themen 4
V Jtree: Alle Verzeichnisse und Ordner anzeigen, aber wie? Java Basics - Anfänger-Themen 2
K Verständnis Problem bei Server/Client Java Basics - Anfänger-Themen 2
I WildFily - unterschiedliche Libs im Projekt verursachen Problem Java Basics - Anfänger-Themen 11
imocode Vererbung Problem mit Vererbung Java Basics - Anfänger-Themen 2
L Taschenrechner Problem Java Basics - Anfänger-Themen 4
I Applikationsserver (WildFly) - Zugriff auf Ressourcen.. Problem mit Pfade Java Basics - Anfänger-Themen 10
A ScheduledExecutorService problem Java Basics - Anfänger-Themen 7
marcelnedza Problem mit Weltzuweisung, JavaKarol Java Basics - Anfänger-Themen 13
XWing Methoden rückgabe Problem? Java Basics - Anfänger-Themen 6
M Erste Schritte Collatz Problem max int Java Basics - Anfänger-Themen 3
M Problem bei verschachtelter for-Schleife bei zweidimensionalen Arrays Java Basics - Anfänger-Themen 3
C GLOOP Problem beim Erstellen der Kamera Java Basics - Anfänger-Themen 9
nelsonmandela Problem bei Ausgabe einer Switch - Case Funktion Java Basics - Anfänger-Themen 5
frager2345 Problem mit Methode Java Basics - Anfänger-Themen 4
L Problem bei Rechnung mit Math.pow Java Basics - Anfänger-Themen 13
A Thread-Schreibe-Lese-Problem Java Basics - Anfänger-Themen 4
SUPERTJB return Problem Java Basics - Anfänger-Themen 3
sserio BigInteger Problem Java Basics - Anfänger-Themen 4
JordenJost Taschenrechner problem Java Basics - Anfänger-Themen 5
K Problem mit "Random" Java Basics - Anfänger-Themen 5
S Datei anlegen Problem! Groß- und Kleinschreibung wird nicht unterschieden Java Basics - Anfänger-Themen 4
sserio Problem beim Anzeigen Java Basics - Anfänger-Themen 5

Ähnliche Java Themen

Neue Themen


Oben