Eine Frage zur JTable

Hallo,

gibt es eine Möglichkeit die Spalten einer JTable horizontal auszurichten?

Statt:

Spalte1|Spalte2|Spalte3
-----------------------
Zeile1 |Zeile1 |Zeile1
Zeile2 |Zeile2 |Zeile2

So:

|Spalte1|Zeile1|Zeile2|...
|Spalte2|Zeile1|Zeile2|...
|Spalte3|Zeile1|Zeile2|...

Auch hallo.

gibt es eine Möglichkeit die Spalten einer JTable horizontal
auszurichten?

Also für das JTable Objekt scheint es wohl keine ‚transpose‘-Methode
zu geben. Zumindest hat die Suche unter http://java.sun.com zu den Stichworten nichts ergeben…
Eine Methode zu Fuss wäre über die Indizes der Tabelle zu gehen:
aus dem Element Spalte1/Zeile2 wird der Index 1/2 zu 2/1 gemacht. Usw…

HTH
mfg M.L.

Hallo Mathis.

gibt es eine Möglichkeit die Spalten einer JTable horizontal
auszurichten?

Statt:

Spalte1|Spalte2|Spalte3

Zeile1 |Zeile1 |Zeile1
Zeile2 |Zeile2 |Zeile2

So:

|Spalte1|Zeile1|Zeile2|…
|Spalte2|Zeile1|Zeile2|…
|Spalte3|Zeile1|Zeile2|…

Da gibt es in Swing nichts von der Stange. Da musst Du selbst
die Ärmel hochkrempeln und das ist hier mit gehörigem Aufwand
bzw. guten Kenntnissen der JTable verbunden:

(1) Spalte fixieren
Deine Spalte mit den SpalteX-Werten willst Du sicherlich
nicht mitscrollen lassen, siehe Beispiel
http://www.codeguru.com/java/articles/128.shtml

(2) Vertauschen der Tabellenindizes
Dein TableModel müsste die Indizes entsprechend vertauschen,
wie Markus schon erklärt hat. Ich würde an Deiner Stelle
ein TransposedTableModel schreiben, welchem Du das
Original-Tabellenmodell im Konstruktor übergibt, also
die Original-Daten „dekoriert“, siehe Dekorierer-Entwurfsmuster
unter http://de.wikipedia.org/wiki/Dekorierer.

(3) TableHeader in fixe Spalte übertragen
Eine normale JTable bietet einen horizontalen TableHeader.
Diesen müsstest Du in Deinem Beispiel entweder komplett
deaktivieren oder ihn in einer selbst modifzierten JTable
in die erste, fixierte Spalte übertragen, also vertikal
machen.

Alles in allem schätze ich den Aufwand auf 2-4 Mann-Wochen
Implementierungsaufwand, wenn Du alles selbst machen willst.

Vielleicht gibt es schon was fertiges, google einfach mal ein
bisschen. Wenn Du so etwas findest, gib mir Bescheid :wink:

Gruß,
-Andreas.

Nachtrag: Zeilenheader
Hallo nochmals.

gibt es eine Möglichkeit die Spalten einer JTable horizontal
auszurichten?

Habe gerade Code entdeckt, der einen fixen Zeilenheader für
die JTable realisiert:

http://www.java-forum.org/de/viewtopic.php?t=7706

Gruß,
-Andreas.