JTreeTable - unerklärliches Verhalten von getValueAt

athikka

Aktives Mitglied
Hallo liebe Java-Forums-gemeinde!

Ich habe ein Problem - und zwar mit einem JTreeTable (Creating TreeTables in Swing)


Bei mir sieht es immer so aus
bild014vy.jpg


Wie ihr seht, ist das Problem beim anzeigen der ersten Spalte.

mein Code ist folgender:

Java:
	@Override
	public Object getValueAt(Object node, int column) {
		
		Node n = getNode(node);
		
		try {
			
			if(column == 0) {
                                System.out.println(n.text); //geht wunderbar, schreibt es korrekt in die konsole
				return n.text; //aber hier ist es ihm völlig egal - schreibt nicht ins jtreetable-"view"
			} else {
				String user = getUserByColumn(column);
				return canBeSeenBy(n, user);
			}
		} catch  (SecurityException se) { se.printStackTrace(); }
		return null;
	}

Es geht um die besagte erste if-anweisung:
ich kann hier sogar return null schreiben - es ist ihm völlig egal, er schreibt mir immer diese komischen speicheradressen hin.

ändere ich aber bei getColumnClass(..):

Java:
	@Override
	public Class getColumnClass(int column) {
        if (column==0) return TreeTableModel.class;
        else return Boolean.class;
	}

das TreeTableModel.class auf String.class zeigt es mir zwar den Text (n.text) wunderbar an, nur ohne Baum-Layout (also ich kann noch immer eingehen, aber es fehlen einrückungen, bilder,...)

Ich weiß wirklich nicht woran es scheitert, habe heute schon den ganzen Tag damit vertan.

Ich habe es 1:1 wie im Beispiel gemacht (nur mit eigener Node Klasse - mit String text und Node[] children darin)


Kann mir wer weiterhelfen?
 

Neue Themen


Zurück
Oben