hallo ihr da,
ich hab für meine jtable einen tablecellrenderer geschrieben, damit sich die hintergrundfarbe in jeder 2. zeile ändert. wenn ich der table den renderer zuweis, dann sieht man meine selektion nicht mehr.
muss ich jetzt n selectionlistener schreiben? oder kann ich des im tablecellrenderer direkt implementieren...oder wie muss ich das machen?
hier noch code:
und in der anderen klasse, in der sich die table befindet
grüßle
ich hab für meine jtable einen tablecellrenderer geschrieben, damit sich die hintergrundfarbe in jeder 2. zeile ändert. wenn ich der table den renderer zuweis, dann sieht man meine selektion nicht mehr.
muss ich jetzt n selectionlistener schreiben? oder kann ich des im tablecellrenderer direkt implementieren...oder wie muss ich das machen?
hier noch code:
Code:
import java.awt.Color;
import java.awt.Component;
import javax.swing.JTable;
import javax.swing.table.DefaultTableCellRenderer;
import javax.swing.table.TableCellRenderer;
public class TableCellRendererForStartFrame extends DefaultTableCellRenderer implements TableCellRenderer
{
@Override
public Component getTableCellRendererComponent(JTable table, Object value,
boolean isSelected, boolean hasFocus, int row, int col)
{
if(row%2==0)
{
setBackground(new Color(255, 255, 200));
}
else
{
setBackground(Color.WHITE);
}
table.setSelectionBackground(new Color(255, 0, 0));
setText((value == null) ? "" : value.toString());
return this;
}
}
und in der anderen klasse, in der sich die table befindet
Code:
table.setDefaultRenderer(Object.class, new TableCellRendererForStartFrame());
grüßle