Hallo,
ich suche nach einer Möglichkeit die einzelnen Spalteninhalte eines JTables unterschiedlich zu formatieren.
Also z.B. Spalte 0 = zentriert, Spalte 1 = linksbündig usw. usw.
Nach einiger Zeit habe ich dann folgendes gefunden, es wird zwar alles sauber compilet, aber funktionieren
tut es leider nicht!
Wenn jemand weiss was hier falsch ist bzw. eine andere Lösung weiss, wäre ich sehr dankbar!
Hier mein TableCellRenderer:
Und so bau ich das dann noch ein... schaut seltsam aus, ging aber anders nicht:
ich suche nach einer Möglichkeit die einzelnen Spalteninhalte eines JTables unterschiedlich zu formatieren.
Also z.B. Spalte 0 = zentriert, Spalte 1 = linksbündig usw. usw.
Nach einiger Zeit habe ich dann folgendes gefunden, es wird zwar alles sauber compilet, aber funktionieren
tut es leider nicht!
Wenn jemand weiss was hier falsch ist bzw. eine andere Lösung weiss, wäre ich sehr dankbar!
Hier mein TableCellRenderer:
Code:
import javax.swing.*;
import javax.swing.table.*;
import java.awt.Color;
import java.awt.Component;
public class MyTableCellRenderer extends DefaultTableCellRenderer{
public Component getTableCellRendererComponent(JTable
table, Object value, boolean isSelected,
boolean hasFocus, int row, int column)
{
super.getTableCellRendererComponent(table, value,
isSelected, hasFocus, row, column);
if (column == 0)
{
//2. Spalte wird rechts ausgerichtet, und die
//Hintergrundfarbe wird geändert
setHorizontalAlignment(SwingConstants.RIGHT);
setBackground(new Color(138, 180, 246));
}
if (column == 3)
//3. Spalte wird zentriert
setHorizontalAlignment(SwingConstants.CENTER);
return this;
}
}
Code:
table1.setDefaultRenderer(MyTableCellRenderer.class, new MyTableCellRenderer());