Tabellen verschachteln

Status
Nicht offen für weitere Antworten.

muge

Mitglied
Hallo zusammen

Ich versuche gerade, eine JTable voller JTable's anzuzeigen. Leider hat das bisher nicht funktioniert. Es kompiliert zwar brav, aber angezeigt wird fast nichts.
Nun wollte ich fragen ob das überhaupt gehen kann. Hat das schon mal jemand versucht?

Bei mir wird nur das erste Feld oben links angezeigt, aber anstatt der Tabelle schreibt er dort nur javax.swing... der rest kann ich nicht mehr lesen, aber wahrscheinlich wird dort noch das JTable stehen.

Irgendwo während dem ausführen wird eine Exception geworfen
Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: 1
at javax.swing.JTable$1.getValueAt(JTable.java:472)

Kann jemand damit was anfangen?

thx
muge
 
Von der Sinnfrage mal abgesehen:

Du hast einfach ein Datenmodell mit JTables gefüllt und meinst nun deine "Ober-JTable" würde diese nun in den Zellen anzeigen? Weit gefehlt.. Standardmäßig versucht es den "Wert" der Datenobjekte anzuzeigen. So du da nichts anderes vorsiehst, geht JTable von Strings aus, entsprechend wird toString() aufgerufen und das liefert immer Paketpfad.Klasse$blubb... 😉

Wenn überhaupt gehts nur über einen selbstgeschriebenen Renderer.

Aber zunächst solltest du dir echt die Sinnfrage stellen. Warum müssen Java-Novizen immer versuchen mit solch komplexem Kram auf die Kacke zu hauen? Die Basics sind doch so schon schwer genug... 😉
 
Zum Sinn:

Die Datensätze, die ich anzeigen will sind mindestens zweizeilig. Sie sollen aber klar von den anderen unterschieden werden können.
Meine Idee war nun: äussere Tabelle mit Gitterlinien, innere Tabelle ohne. (HTML geschädigt...)
Das ganze soll dann gedruckt werden.

Ein Renderer selber schreiben? hört sich mühsam an... wie gross ist dafür der Aufwand für einen, wie du so schön gesagt hast) Java Novizen, speziell in sachen GUI/swing?
 
Naja, halt zweizeilig.

-----------------------------------------------------------
Zeile11 Zeile12
Zeile21 Zeile22
-----------------------------------------------------------
Zeile11 Zeile12
Zeile21 Zeile22
-----------------------------------------------------------

sowas in der Art soll es werden.

Also wenn jemand eine idee hat, das ohne JTables zu lösen, ich bin ganz ohr.

Die Zeilen sollten einfach linksbündig untereinander stehen...

thx
 
Also, wenn Du's mit ner JTable lösen willst, schreib' Dir einen Renderer für die Table, der z.B. von JTextArea abgeleitet ist. Damit kannst Du problemlos mehrzeiligen Text in einer Zelle darstellen
 
Vielleicht habe ich etwas grundsätzliches nicht ganz verstanden...

Wie bringe ich in einem Renderer eine JTable dazu sich selbst anzuzeigen?
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben