ERLEDIGT
JA
JA
ANTWORTEN
3
3
ZUGRIFFE
257
257
EMPFEHLEN
-
Hallo!
Ich möchte einige Zeilen in meiner JTable umgestalten.
Hierfür hab ich einen eigenen TableCellRenderer gemacht und ihn der Table zugewiesen.
Code java:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
public class ArtkelTableCellRenderer extends DefaultTableCellRenderer { private static final long serialVersionUID = 7979571000106387348L; @Override public Component getTableCellRendererComponent( JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column ) { Component cell = super.getTableCellRendererComponent( table, value, isSelected, hasFocus, row, column ); if( !((ArtikelTableModel)table.getModel()).isAktiv( row )) { System.out.println("asked row " + row); cell.setBackground( Color.red ); } else { return super.getTableCellRendererComponent( table, value, isSelected, hasFocus, row, column ); } return cell; } }
Leider wird nun die ganze Tabelle mit background=red gemacht.
Wie kann ich mir quasi die default TableCellRendererComponent holen?
-
-
Hm, jetzt bin ich auf ein anderes Problem gestoßen:
In der Funktion
Code java:
bekomme ich int row übergeben.
Dies ist aber nicht die absolute Row(ohne filter) sondern jene, wo die Reihe steht.
Kann man irgendwie rausfinden welche Row es in dem gesamten Model(ohne filter) ist?
-
Die Funktion nach welcher ich gesucht habe:
Code java:1
table.convertRowIndexToModel(row)
Die korrekte Funktion:
Code java:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
@Override public Component getTableCellRendererComponent( JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column ) { Component cell = super.getTableCellRendererComponent( table, value, isSelected, hasFocus, row, column ); if( !((ArtikelTableModel)table.getModel()).isAktiv( table.convertRowIndexToModel(row) )) { cell.setFont( new Font("SansSerif", Font.ITALIC, 12) ); cell.setForeground( Color.red ); } else { cell.setFont( new Font("SansSerif", Font.PLAIN, 12) ); cell.setForeground( Color.black ); } return cell; }
Ähnliche Themen
-
C# WrapMode nur für bestimmte DGV Zeilen
Von Pennpann im Forum .NET DatenverwaltungAntworten: 0Letzter Beitrag: 25.05.11, 16:26 -
JComboBox-Zeilen in JTable
Von KPMAnakha im Forum JavaAntworten: 0Letzter Beitrag: 02.11.09, 11:49 -
JTable: bestimmte Zeilen ändern
Von anfer im Forum Swing, Java2D/3D, SWT, JFaceAntworten: 8Letzter Beitrag: 21.06.07, 15:28 -
Bestimmte Zeilen auslesen
Von pycak im Forum PHPAntworten: 5Letzter Beitrag: 07.02.05, 22:39 -
Nur bestimmte Zeilen auslesen
Von rikro im Forum Relationale DatenbanksystemeAntworten: 3Letzter Beitrag: 30.07.04, 14:09





Zitieren
Login





