1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
|
public class FormatTable extends JTable{
private FormatTableModel ftm;
private FormatCellRenderer white = new FormatCellRenderer(Color.WHITE);
private FormatCellRenderer green = new FormatCellRenderer(Color.GREEN);
private FormatCellRenderer red = new FormatCellRenderer(Color.RED);
public FormatTable(FormatTableModel ftm){
super(ftm);
this.ftm = ftm;
}
public TableCellRenderer getCellRenderer(int row, int col){
FormatTableModel.ACTION_STATE state = this.ftm.getState(row);
TableCellRenderer tc = white;
if(state == FormatTableModel.ACTION_STATE.NOT_DONE){
tc = white;
}
else if(state == FormatTableModel.ACTION_STATE.DONE_OK){
tc = green;
}
else if(state == FormatTableModel.ACTION_STATE.DONE_ERROR){
tc = red;
}
return tc;
}
private class FormatCellRenderer extends DefaultTableCellRenderer{
private Color c;
public FormatCellRenderer(Color c){
this.c = c;
}
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column){
Component cp = super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
cp.setBackground(c);
return cp;
}
}
} |
Partager