DefaultTableCellRenderer Farbe bestimmter Zelle ändern

tkler

Mitglied
Hi!
Ich hab ein Problem bezüglich des DefaultTableModel und des DefaultTableCellRenderer.

Ich möchte die Farbe der Schrift in der Tabelle ändern...funktioniert soweit auch:

[JAVA=42]public class ColoredTableCellRenderer extends DefaultTableCellRenderer {

@Override
public void setValue(Object value) {
String s = value.toString();

try {
if (Double.parseDouble(s) > 0.0)
setForeground(Color.GREEN);
else
setForeground(Color.RED);

} catch (Exception e) {
// TODO: handle exception
}
setText(s);
}

}[/code]

aufgerufen wird es mittels:
[JAVA=42]
DefaultTableCellRenderer ren = new ColoredTableCellRenderer();
table.setDefaultRenderer ( Object.class, ren );
[/code]

Problem ist nun, dass ich NUR Strings in der Tabelle habe.
Jedoch befinden sich auch Zahlen drin, als Strings jedoch abgespeichert.
Ich würde halt gern nur bestimmte Zellen färben, und nicht die ganze Tabelle.
Ist das überhaupt möglich?
Irgendwie mit getValueAt(i, 4) diese Spalte z.B. mit ner forSchleife durchzulaufen und die Farbe zu ändern, und den Rest einfach unbehandelt zu lassen?
 

Shulyn

Bekanntes Mitglied
Ich habe etwas ähnliches gebaut, einzelne Zellen einfärben wenn ein bestimmter zustand eintriff...
[Java]
public abstract class AbstractCustomTableCellRenderer extends DefaultTableCellRenderer {

public abstract String getValue(Object value);

public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus,
int row, int column) {
String result = value != null ? getValue(value) : null;
final TableSorter ts = (TableSorter) table.getModel();
final int sRow = ts.modelIndex(row);
Component c = super.getTableCellRendererComponent(table, result, isSelected, hasFocus, sRow, column);

boolean isDuplicate = ((MeinModel)ts.getTableModel()).getRow(sRow).isDuplicate();
boolean isDummy = ((MeinModel)ts.getTableModel()).getRow(sRow).isDummy();
if ((null == value) || isDuplicate) {
c.setForeground(TreetableStyle.ConstraintError.foreground);
c.setBackground(TreetableStyle.ConstraintError.background);
} else {
if (isSelected) {
c.setForeground(table.getSelectionForeground());
c.setBackground(table.getSelectionBackground());
} else {
c.setForeground(table.getForeground());
c.setBackground(table.getBackground());
}
}

if(isDummy) {
c.setFont(getFont().deriveFont(Font.BOLD));
} else {
c.setFont(getFont().deriveFont(Font.PLAIN));
}
return c;
}
}

[/Java]

Ich habe noch einen TableSorter dazwischen, da man die Spalten/Zeilen Sortieren kann...
 
Zuletzt bearbeitet:

tkler

Mitglied
Habs doch anders hinbekommen.. bekomms mit deinem Beispiel nämlich nicht ganz hin :p

Glücklicherweise haben meine Zahlen ein + bzw ein - davor. Ich überprüfe also, ob das Zeichen davor ein + oder - hat :p

[JAVA=42]
public class ColoredTableCellRenderer extends DefaultTableCellRenderer {

@Override
public void setValue(Object value) {
String posNeg = null;
String s = value.toString();

if (s.length() > 0) {
posNeg = s.substring(0, 1);
}

try {
if (posNeg.equals("+")) {
setForeground(Color.GREEN);
} else if (posNeg.equals("-")) {
setForeground(Color.RED);
}

else {
setForeground(Color.BLACK);
}

} catch (Exception e) {
// TODO: handle exception
}
setText(s);
}

}
[/code]
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
L DefaultTableCellRenderer (JXTreeTable) AWT, Swing, JavaFX & SWT 7
D DefaultTableCellRenderer - Performance AWT, Swing, JavaFX & SWT 3
F DefaultTableCellRenderer blendet JCheckBox aus AWT, Swing, JavaFX & SWT 4
G Swing Problem mit DefaultTableCellRenderer AWT, Swing, JavaFX & SWT 2
D Swing Farbige Zelle ohne DefaultTableCellRenderer AWT, Swing, JavaFX & SWT 17
D Swing Farbige Zelle ohne DefaultTableCellRenderer AWT, Swing, JavaFX & SWT 4
M DefaultTableCellRenderer AWT, Swing, JavaFX & SWT 10
aze JTable in Popup.Problem mit DefaultTableCellRenderer AWT, Swing, JavaFX & SWT 9
D DefaultTableCellRenderer AWT, Swing, JavaFX & SWT 12
D JTable, DefaultTableCellRenderer & AbstractTableModel AWT, Swing, JavaFX & SWT 11
E JTable; DefaultTableCellRenderer. Zellen farbig befüllen. AWT, Swing, JavaFX & SWT 5
S Welche Zelle in DefaultTableCellRenderer? AWT, Swing, JavaFX & SWT 2
J DefaultTableCellRenderer & Höhe AWT, Swing, JavaFX & SWT 3
H JavaFX PixelWriter.setColor setzt Farbe nicht AWT, Swing, JavaFX & SWT 2
F Progressbar Farbe AWT, Swing, JavaFX & SWT 6
jojoge Wie erstelle ich runde Buttons mit Farbe? AWT, Swing, JavaFX & SWT 1
Kotelettklopfer Frame ändert Farbe nicht AWT, Swing, JavaFX & SWT 12
Hatsi09 GUI Input Farbe ändern AWT, Swing, JavaFX & SWT 0
L Swing Button Farbe ändern/wechseln AWT, Swing, JavaFX & SWT 2
B JavaFX Farbe eines Quadrates in einer separaten Klasse ändern AWT, Swing, JavaFX & SWT 4
L AWT Ändern der Farbe eines BufferedImage mit Farbähnlichkeit AWT, Swing, JavaFX & SWT 5
sascha-sphw JavaFX ListCell höhe verändert sich beim ändern der Text-Farbe AWT, Swing, JavaFX & SWT 14
F Drag&Drop mit Transparenter Farbe bei PNG AWT, Swing, JavaFX & SWT 0
V Swing für jedes Kästchen eine eigene Farbe AWT, Swing, JavaFX & SWT 2
Drachenbauer Swing Wie ändere ich die Farbe der Konturen von jButton und jCombobox? AWT, Swing, JavaFX & SWT 18
Drachenbauer Swing Wie ändere ich die helle geklickt-Farbe von einem JButton? AWT, Swing, JavaFX & SWT 4
H JFreeChart BarDiagramm Balken der gleichen Serie unterschiedliche Farbe zuordnen AWT, Swing, JavaFX & SWT 2
cool_brivk24 Swing Button Farbe ändern AWT, Swing, JavaFX & SWT 2
R Farbe zu einem Eckpunkt generieren AWT, Swing, JavaFX & SWT 2
MaxG. Swing Farbe von Button beim drücken ändern AWT, Swing, JavaFX & SWT 4
P Jframe Bild einfügen, Hintergrund Farbe ändern, und Button schrift Größe ändern AWT, Swing, JavaFX & SWT 2
A JButton soll durch anklicken die Farbe wechseln AWT, Swing, JavaFX & SWT 8
I 2D-Grafik Problem beim Ändern der Farbe eine 2d Objekts AWT, Swing, JavaFX & SWT 3
W Farbe des Fensters AWT, Swing, JavaFX & SWT 2
krgewb Swing JTree - Farbe von nodes ändern AWT, Swing, JavaFX & SWT 4
M Ausgabe der HSL oder RGB Zusammensetzung einer Farbe (JColorChooser AWT, Swing, JavaFX & SWT 1
J JavaFX Bestimmte Zellen im TableView ändern (Farbe und Text) AWT, Swing, JavaFX & SWT 1
Z Möglichkeit mit Listerners die Farbe meiner Objekte zu ändern AWT, Swing, JavaFX & SWT 15
K (GUI) JButton Farbe bei druck ändern AWT, Swing, JavaFX & SWT 3
C Arrow Farbe bei JComboBox AWT, Swing, JavaFX & SWT 2
S Größe und Farbe vom JButton festlegen AWT, Swing, JavaFX & SWT 2
S Farbe ändern bei der paint-Methode AWT, Swing, JavaFX & SWT 5
V LookAndFeel JSpinner Hintergrund Farbe mit Nimbus LaF AWT, Swing, JavaFX & SWT 0
X mouseover verändert ungewollt die farbe AWT, Swing, JavaFX & SWT 4
D Swing Farbe aus Pixel vom JFrame auslesen AWT, Swing, JavaFX & SWT 17
T Swing JScrollPane Farbe der Scrollbar AWT, Swing, JavaFX & SWT 3
J Swing Farbe wählen ohne JColorChooser 2 AWT, Swing, JavaFX & SWT 23
S Farbe von JButton ändern AWT, Swing, JavaFX & SWT 5
T Jbutton Click farbe ändern AWT, Swing, JavaFX & SWT 4
C AWT Wie setze ich die Farbe "leuchtetgrün"? AWT, Swing, JavaFX & SWT 4
B Swing Button Farbe AWT, Swing, JavaFX & SWT 3
M Hover-Farbe über Hintergrundfarbe legen AWT, Swing, JavaFX & SWT 3
N Farbe abziehen AWT, Swing, JavaFX & SWT 3
R Farbe von Buttons stimmt nicht AWT, Swing, JavaFX & SWT 2
B Cursor Farbe ändern AWT, Swing, JavaFX & SWT 6
Y LookAndFeel JTabbedPane: Tab-Farbe mit Nimbus setzen AWT, Swing, JavaFX & SWT 3
D JComboBox jedes Item mit einer anderen Farbe AWT, Swing, JavaFX & SWT 10
P JLabel Farbe/Bild ändern aus MouseListener heraus AWT, Swing, JavaFX & SWT 3
P 2D-Grafik Neue Farbe für einen Teilbereich einer Linie? AWT, Swing, JavaFX & SWT 8
K 2D-Grafik Fehler beim Farbe auslesen AWT, Swing, JavaFX & SWT 3
T JTable Zellen Farbe AWT, Swing, JavaFX & SWT 13
D JTabel: Überschrift, Abstand zwischen Tabellen, Spalten-Farbe ändern AWT, Swing, JavaFX & SWT 2
D Swing JTable, Zellen-Farbe über Koordinaten ändern AWT, Swing, JavaFX & SWT 9
N SWT-Widgets in Farbe AWT, Swing, JavaFX & SWT 21
F JButton Text-Farbe bei Disabled AWT, Swing, JavaFX & SWT 2
C Farbe eines ToolTipTextes eines Buttons AWT, Swing, JavaFX & SWT 4
D JTabbedPane - Farbe ändern im Bereich hinter den Reitern AWT, Swing, JavaFX & SWT 2
Q 3D-Grafik Cube Farbe setzen zur Laufzeit. AWT, Swing, JavaFX & SWT 10
I Schrift und Farbe formatieren, und zwar pro Linie... AWT, Swing, JavaFX & SWT 4
A SWT - Farbe von Text auf Label ändern AWT, Swing, JavaFX & SWT 2
M Combobox soll Farbe einer Komponente setzen AWT, Swing, JavaFX & SWT 2
N Swing JEditorPane mit Farbe und Font AWT, Swing, JavaFX & SWT 2
chik Button beschriften und Farbe zufällig anordnen AWT, Swing, JavaFX & SWT 2
S JSlider Track Breite und Farbe AWT, Swing, JavaFX & SWT 2
D SWT TabItem Farbe der Schrift ändern AWT, Swing, JavaFX & SWT 3
L JFreeChart Farbe von Balken AWT, Swing, JavaFX & SWT 5
C Welche Farbe hat die Auswahl in einer JTable? AWT, Swing, JavaFX & SWT 2
O AWT Zeichne mit eigener Farbe AWT, Swing, JavaFX & SWT 3
N Farbe einer einzelnen Zeile einer JTable ändern AWT, Swing, JavaFX & SWT 10
S JSplitPane ändert Farbe nicht AWT, Swing, JavaFX & SWT 4
O Hgr- Farbe einer JTable ändert sich nicht AWT, Swing, JavaFX & SWT 11
V JComboBox - Farbe in der Auswalliste AWT, Swing, JavaFX & SWT 7
GambaJo Farbe eines JFrames AWT, Swing, JavaFX & SWT 2
K Icon auf JButton mit Wechsel der Farbe AWT, Swing, JavaFX & SWT 2
D Farbe bei einem JButton wechseln AWT, Swing, JavaFX & SWT 4
L Farbe des Auswahlrechtecks bei selektierter Tabellenzeile AWT, Swing, JavaFX & SWT 9
M JComboBox Selected-Background Farbe AWT, Swing, JavaFX & SWT 5
K Farbe eines Pixels in einem Bild AWT, Swing, JavaFX & SWT 7
I JLabel Farbe AWT, Swing, JavaFX & SWT 1
L wie setze ich die Farbe des Pfeils in einer JComboBox? AWT, Swing, JavaFX & SWT 5
G Farbe der Markierung einer Componente ändern AWT, Swing, JavaFX & SWT 2
G JOptionPane mit andere Farbe AWT, Swing, JavaFX & SWT 8
G JFrame und Farbe AWT, Swing, JavaFX & SWT 4
M Farbe eines strings in JTextArea AWT, Swing, JavaFX & SWT 2
J JTree - Farbe von nodes ändern AWT, Swing, JavaFX & SWT 2
F Farbe für den Hintergrund eine BorderLayout-Teils AWT, Swing, JavaFX & SWT 5
G Bild mit transparente farbe für den IE6 AWT, Swing, JavaFX & SWT 5
G Farbe ändern bei Klick auf einen Kreis AWT, Swing, JavaFX & SWT 5
B transparente Farbe AWT, Swing, JavaFX & SWT 3
N Die Zeile einer JTable verändert beim klicken ihre Farbe? AWT, Swing, JavaFX & SWT 7

Ähnliche Java Themen

Neue Themen


Oben