G
Guest
Gast
Hallo,
ich möchte einen wechsel der Farben in einer JTable programmieren, die erste Zeile soll weiß, die zweite Hellblau, die dritte weiß, die vierte hellblau usw. sein.
Ich habe mir dafür einen DefaultTableCellRenderer geschrieben,
die 4 beim switcher kommt daher, dass ich 4 Spalten habe, also er arbeitet 4 Spalten mit flag == true und switcher != 4 in hellblau ab und anschließen mit flag == false und switcher != 0, da fällt mir grad auf, dass flag auch weg kann, glaub ich.
Das Problem ist aber folgendes, wenn ich ein Feld der Tabelle anklicke, so geraten die Farben durcheinander, wie kann ich diese Farben "fixieren" ?
ich möchte einen wechsel der Farben in einer JTable programmieren, die erste Zeile soll weiß, die zweite Hellblau, die dritte weiß, die vierte hellblau usw. sein.
Ich habe mir dafür einen DefaultTableCellRenderer geschrieben,
Code:
import javax.swing.table.DefaultTableCellRenderer;
import java.awt.Color;
public class MyCellRenderer extends DefaultTableCellRenderer {
public int switcher = 0;;
public boolean flag = true;
public MyCellRenderer(){
super();
}
public void setValue(Object value){
if(flag && switcher != 4){
this.setBackground(new Color(232,242,252));
this.setText(value.toString());
this.switcher++;
if(switcher == 4) flag = false;
}
else if(!flag && switcher != 0){
this.setBackground(Color.WHITE);
this.setText(value.toString());
this.switcher--;
if(switcher == 0) flag = true;
}
}
}
die 4 beim switcher kommt daher, dass ich 4 Spalten habe, also er arbeitet 4 Spalten mit flag == true und switcher != 4 in hellblau ab und anschließen mit flag == false und switcher != 0, da fällt mir grad auf, dass flag auch weg kann, glaub ich.
Das Problem ist aber folgendes, wenn ich ein Feld der Tabelle anklicke, so geraten die Farben durcheinander, wie kann ich diese Farben "fixieren" ?