jTable Gestaffelte Überschriften

TDO88

Bekanntes Mitglied
Hallo,

ich suche eine Möglichkeit für meine jTable "gestaffelte" Überschriften zu erstellen.
z.B.

Seriennummer | Position | Abweichung |
| X | Y | X | Y |
-------------------------------------------
123456 | 10 | 5 | 0 | 3 |
-------------------------------------------

Ich hoffe es ist verständlich, was ich meine?!
Habe bisher noch keine Möglichkeit dafür gefunden. Geht so etwas überhaupt?

Gruß
TDO
 

TDO88

Bekanntes Mitglied
Ahh....sorry, hab jetzt erst gesehen, das meine Formatierung der angedeuteten Tabelle geändert wurde.
Hier nochmal ein Bild aus Excel.
Ich möchte quasi eine Überschrift nochmal in zwei Spalten aufteilen.

Gruß
TDO
 

Anhänge

  • Spalten.jpg
    Spalten.jpg
    15,8 KB · Aufrufe: 35

Thallius

Top Contributor
Wenn du nicht nach X und Y getrennt sortieren willst, dann sollte das kein Problem sein. Gibst du im Model halt einfach bei Position x und y entsprechend formatiert zurück.
 

TDO88

Bekanntes Mitglied
Hallo VfL_Freak,

danke für die Antwort. Habe da was recht vielversprechendes gefunden:

http://www.java2s.com/Code/Java/Swing-Components/GroupableGroupHeaderExample.htm

Hab das jetzt versucht bei mir einzubauen, bekomme aber folgende Fehlermeldung:

Exception in thread "AWT-EventQueue-0" java.lang.ClassCastException: javax.swing.table.JTableHeader cannot be cast to winscanq.GroupableTableHeader

tritt bei folgender Zeile auf:
GroupableTableHeader header = (GroupableTableHeader) jTable1.getTableHeader();

Hat jemand eine Idee, wie man das Problem lösen kann?

Gruß
TDO
 

VfL_Freak

Top Contributor
Moin,

was ist denn "winscanq.GroupableTableHeader" ??
Vermutlich hat Dein Code nicht viel mit dem Beispiel im Link zu tun!
Post mal Deinen aktuellen Code, bei dem der Fehkler auftritt !

Gruß Klaus
 

TDO88

Bekanntes Mitglied
Mein Projekt heißt winscanq.
Im Projekt gibt es die Klasse GroupableTableHeader, wie in dem Beispiel.
Ich habe aus dem Beispiel die Klassen: ColumnGroup, GroupableTableHeader und GroupableTableHeaderUI komplett übernommen (copy & paste)

Dann versuche ich das ganze folgendermaßen anzuwenden:
Java:
        TableColumnModel cm = jTable1.getColumnModel();
        ColumnGroup g_Pa = new ColumnGroup("Positionsabweichung");
        g_Pa.add(cm.getColumn((2)));
        g_Pa.add(cm.getColumn(3));
        ColumnGroup g_P = new ColumnGroup("Positionsunsicherheit");
        g_P.add(cm.getColumn(4));
        g_P.add(cm.getColumn(5));
        ColumnGroup g_PSavg = new ColumnGroup("mittl. Positionsstreubreite");
        g_PSavg.add(cm.getColumn(6));
        g_PSavg.add(cm.getColumn(7));
        ColumnGroup g_Uavg = new ColumnGroup("mittl. Umkehrspanne");
        g_Uavg.add(cm.getColumn(8));
        g_Uavg.add(cm.getColumn(9));
        GroupableTableHeader header = (GroupableTableHeader) jTable1.getTableHeader();
        header.addColumnGroup(g_Pa);
        header.addColumnGroup(g_P);
        header.addColumnGroup(g_PSavg);
        header.addColumnGroup(g_Uavg);

Liegt es vielleicht daran, dass ich nicht wie im Beispiel aus meinem Code heraus eine JTable auf meinem Fronpanel erstelle?
Ich habe in der Netbeans Entwicklungsumgebung eine Design Oberfläche, in welcher ich die jTable1 per drag n drop draufgezogen habe. Kann es sein, dass die jTable dann zur Laufzeit im Speicher schon erstellt ist und nicht mehr in der Form verändert werden kann?!

Gruß
TDO
 

Joose

Top Contributor
Hast du diese Zeilen aus dem Beispiel auch übernommen?
Java:
    JTable table = new JTable( dm ) {
      protected JTableHeader createDefaultTableHeader() {
          return new GroupableTableHeader(columnModel);
      }
    };
 

TDO88

Bekanntes Mitglied
Hallo Joose,

nein, die habe ich nicht übernommen. Durch die Zeilen erstelle ich doch eine neue jTable oder?
Das möchte ich nämlich nicht. Meine jTable existiert ja schon.

Gruß
TDO
 

Joose

Top Contributor
Ja schon, das wichtige ist aber das Überschreiben der "createDefaultTableHeader" Methode! Dadurch erzeugst du für die Header die richtigen Objekte (vom Type GroupableTableHeader), und du hättest diese ClassCastException nicht.

PS: Beispiel Code ist zur Anschauung ;) selten wird man ihn so vorfinden das man ihn 1:1 kopieren kann. Ein bisschen Arbeit muss man dan selber noch reinstecken.
 

TDO88

Bekanntes Mitglied
Okay, bin leider noch nicht so sicher in Java und OOP.
Ich weiß jetzt leider trotzdem noch nicht, wie ich das auf meinen Fall anwenden kann.
Muss ich eine neue jTable erzeugen oder kann ich die Methode auch auf meine vorhandene jTable anwenden?
Oder muss ich bspw. eine neue jTable erzeugen, die Methoden usw. anwenden und dann auf meine vorhandene Tabelle übertragen?

Gruß
TDO
 

Joose

Top Contributor
Nein du musst nichts zusätzlich neues erstellen.
Du musst halt nur dafür sorgen das von die entsprechende Methode überschrieben wird, am besten dort wo du dein JTable aktuell erstellst ;)
 

TDO88

Bekanntes Mitglied
Das ist aber leider ein Problem, da ich wie gesagt die Design Möglichkeit bei Netbeans nutze und die jTable per drag n drop einfach auf meine Oberfläche ziehe, wird dadurch von Netbeans die jTable erstellt und das steht in einem Bereich, der sich nicht ändern lässt. Ich kann also auf das erstellen der jTable keinen Einfluss nehmen :(
Oder ich weiß zumindest nicht, wie das geht
 

Joose

Top Contributor
Der Designer von Netbeans generiert einfach nur eine java-Datei mit entsprechenden Code. Diese Datei sollte sich von der IDE ohne weiteres öffnen und manipulieren lassen.
 

TDO88

Bekanntes Mitglied
Der Bereich in dem die jTable erzeugt wird, lässt sich leider nicht bearbeiten. Kann man Netbeans diese Einschränkung abgewöhnen?
Ich hab die java-Datei mal mit Notepad bearbeitet und siehe da... es hat funktioniert :)
Leider habe ich danach nochmal was an der Tabelle im Designer (Spaltenbreite) geändert und siehe da... meine Änderung über Notepad sind wieder futsch...
Wie schon gesagt, kann man Netbeans das irgendwie abgewöhnen, diese Bereiche für die Bearbeitung zu sperren?
 

Joose

Top Contributor
Mich würde es generell wundern wenn diese Bereich gesperrt sind.
Ja deine Änderungen verschwinden natürlich sobald der UI Editor wieder drübergeht, daher bin ich auch kein FAN von UI Editoren und schreib mir lieber alles selber ;)
 

TDO88

Bekanntes Mitglied
Und was mir leider fehlt, sind die Begrenzungen der einzelnen Spalten/Überschriften.
Im Beispiel auf der o.g. Seite sind alle Überschriftsfelder schön optisch von einander getrennt. Bei mir sieht es so aus. Oder ist das nur eine Darstellungssache von Win10?
 

Anhänge

  • Spalten.jpg
    Spalten.jpg
    19,8 KB · Aufrufe: 25

TDO88

Bekanntes Mitglied
Weiß jemand wie man Netbeans das abgewöhnen kann, dass die Änderungen immer wieder überschrieben werden, sobald man am Design was ändert oder eventuell eine Vorlage dafür erstellen kann?!
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
KeTho1712 Java Swing: JTable standardmäßig füllen, sodass bei Start bereits Datensätze gespeichert sind Allgemeine Java-Themen 1
H Swing JTextArea als TableCellRenderer in JTable - wie Zeilen selektieren? Allgemeine Java-Themen 47
D JTable mit JTextAreas in den Zellen Allgemeine Java-Themen 8
X Swing JTable zeigt nichts Allgemeine Java-Themen 4
G jTable aktualisieren?! Allgemeine Java-Themen 1
S JTable - mehrere ausgewählte Rows in ArrayList Allgemeine Java-Themen 5
A Fehler beim Aktualisieren JTable Allgemeine Java-Themen 1
D falsche Zeile aus JTable in MySQL gelöscht Allgemeine Java-Themen 6
offi Drag and Drop mehrerer File aus Explorer in JTable Allgemeine Java-Themen 1
V JTable Externe Lib Allgemeine Java-Themen 2
F JTable Pfeiltasten-Verhalten Allgemeine Java-Themen 1
Paul15 2D Arraylist in Jtable Allgemeine Java-Themen 1
R jTable, nur Werte zwischen 2 Double values ausgeben Allgemeine Java-Themen 3
B Klassen JTable mit einer Liste Allgemeine Java-Themen 0
A JTable Bilder Allgemeine Java-Themen 1
F JTable mit Zellen die sich durch andere Eingaben füllen Allgemeine Java-Themen 1
A JTable - CellRange auslesen Allgemeine Java-Themen 2
A jTable Renderer Allgemeine Java-Themen 5
N JTable filtern Allgemeine Java-Themen 3
hdi JTable#print & Druckgröße Allgemeine Java-Themen 6
S JTable: Model durch ein anderes ersetzen Allgemeine Java-Themen 2
G JTable: ListSelectionListener removen Allgemeine Java-Themen 8
M JTable + ArrayList Allgemeine Java-Themen 3
G Aktualisierung einer JTable erfolgt nicht zuverlässig Allgemeine Java-Themen 14
E Hintergrund einer JTable änden Allgemeine Java-Themen 2
G Darstellung von Ergebnissen einer Dokumentensuche über eine JTable Allgemeine Java-Themen 19
Iron Monkey Inhalt von JTable in die Textdatei mit StringWidth schreiben Allgemeine Java-Themen 3
P jTable getSelectedRow? Allgemeine Java-Themen 2
B JTable eigene Daten Add Methode Allgemeine Java-Themen 2
B LEERE JTable MouseListener + popupmenu Allgemeine Java-Themen 2
X xml aus Zip in JTable Allgemeine Java-Themen 2
L jTable drag & drop einzelner Zeilen Allgemeine Java-Themen 4
S JTable und Spalten löschen Frage Allgemeine Java-Themen 5
H JTable per iText in PDF: Größenanpassung möglich? Allgemeine Java-Themen 2
F XML zu JTable mit JDOM Allgemeine Java-Themen 2
E JTable wird nicht angezeigt Allgemeine Java-Themen 11
Screen ImageIcon in Cell der JTable Allgemeine Java-Themen 2
G JTable mit Keylistener geht nicht Allgemeine Java-Themen 3
C Swing JTable Vector aus DB adden Allgemeine Java-Themen 3
A Swing JTable Polymorphismus Allgemeine Java-Themen 2
trash super + JTable Allgemeine Java-Themen 7
D JTable -> 1Spalte nur zahlen Allgemeine Java-Themen 2
L JTABLE setvalueat methode! Allgemeine Java-Themen 16
C Swing Daten zwischen JTable teilen Allgemeine Java-Themen 6
hdi JTable: Sortierung von Date-Objekten Allgemeine Java-Themen 4
B JTable nach Icon sortieren Allgemeine Java-Themen 6
N Exception beim auslesen einer JTable Allgemeine Java-Themen 5
M jdesktop binding: jTable update nach Änderung... Allgemeine Java-Themen 3
D JTable mit GROUP BY Allgemeine Java-Themen 23
martin82 Regex - JTable - Filter Allgemeine Java-Themen 10
X JTable mit Checkboxen -> Setzen (true/false) der Checkboxen per Mouseklick... Allgemeine Java-Themen 3
P JTable drucken Allgemeine Java-Themen 8
A JTable Feldwerte in JTextFelder mit blättern Allgemeine Java-Themen 5
DStrohma [Erledigt] Wieso kann ich Taste 'ENTER' in JTable nicht belegen? Allgemeine Java-Themen 2
M jTable Allgemeine Java-Themen 19
D jTable und TableModel Allgemeine Java-Themen 2
B Exception bei leerem JTable verhindern Allgemeine Java-Themen 10
A Observable BeansBinding an einer JTable bzw. JXTable Allgemeine Java-Themen 3
P Textfile -> Array -> JTable Allgemeine Java-Themen 9
S JTable Aktuelisieren ber Wie ? Allgemeine Java-Themen 4
MQue JComboBox in JTable Allgemeine Java-Themen 4
J Ergebnismenge eines SQL-Queries in JTable anzeigen Allgemeine Java-Themen 3
MQue JTable alles rechts Allgemeine Java-Themen 8
G Checkboxen abfragen,Auswahl sichern, JTable laden Allgemeine Java-Themen 2
G Hibernate, JTable und Performance Allgemeine Java-Themen 17
R JTable und Cell Renderer Allgemeine Java-Themen 3
M JTable: Anzahl Zeichen bei Eingabe Allgemeine Java-Themen 2
S Welche Speicherung von Daten bei Kalendarfunktion der jtable Allgemeine Java-Themen 7
J keylistener auf jtable Allgemeine Java-Themen 19
C JTable, Abstand zwischen Zellen Allgemeine Java-Themen 2
G Eindeutiges Identifizieren einer JTable/Component z.laufzeit Allgemeine Java-Themen 2
D JTable -> ArrayIndexOutOfBoundsException bei Mausklick Allgemeine Java-Themen 2
S JTable editieren + in JTextField schreiben Allgemeine Java-Themen 7
G Daten in / für JTable beim Scrollen nachladen? Allgemeine Java-Themen 5
M JTable verändert Position auf meinem JPanel Allgemeine Java-Themen 3
P JTable Allgemeine Java-Themen 2
H JTable Löschen [Alle Zeilen aufeinmal Löschen] Allgemeine Java-Themen 6
P JTable setDataVector Allgemeine Java-Themen 2
D Scrollbalken in meiner JTable auf einmal weg. Allgemeine Java-Themen 2
P JTable Allgemeine Java-Themen 8
P JButtons mit JTable verknüpfen Allgemeine Java-Themen 16
G fehler bei JTable mit JDK1.6 Allgemeine Java-Themen 4
M CheckBox in JTable - ich verzweifle gleich Allgemeine Java-Themen 2
P JTable/Vector Allgemeine Java-Themen 5
P JTable Allgemeine Java-Themen 4
E JButton bleibt in der JTable Allgemeine Java-Themen 2
E JButton in einer Zelle von JTable Allgemeine Java-Themen 16
P JTable selektierte Zeile mitwandern Allgemeine Java-Themen 2
F Checkbox in JTable , eigener Cellrenderer -wie gehts weiter? Allgemeine Java-Themen 2
P JTable suchen in einer Spalte Allgemeine Java-Themen 24
G JTable wird nicht richtig aufgebaut Allgemeine Java-Themen 9
C Ausdrucken einer JTable in eine Datei mit Erhalt des Formats Allgemeine Java-Themen 3
W Columns austauschen/verschieben von jtable Allgemeine Java-Themen 3
P 3rd party JTable libraries (freeware/opensource) Allgemeine Java-Themen 19
D JTable aus Eclipse Ok, kompeliert aber nicht Allgemeine Java-Themen 6
G mySQL und JTable Allgemeine Java-Themen 7
D JTable und Buttons Allgemeine Java-Themen 16
B JScrollPane in einer JTable aktualisieren? Allgemeine Java-Themen 9
G CheckBox in JTable Allgemeine Java-Themen 3
S JTable erzeugen und updaten Allgemeine Java-Themen 10

Ähnliche Java Themen

Neue Themen


Oben