Вы можете использовать DefaultTableCellRenderer окрашивать альтернативные строки из JTable.
table.setDefaultRenderer (Object.class, новый TableCellRenderer() { частное DefaultTableCellRenderer DEFAULT_RENDERER = новый> DefaultTableCellRenderer();
@Override
public Component getTableCellRendererComponent(JTable table, Object >value, boolean isSelected, boolean hasFocus, int row, int column) {
Component c = >DEFAULT_RENDERER.getTableCellRendererComponent(table, value, isSelected, >hasFocus, row, column);
if(isSelected){
c.setBackground(Color.YELLOW);
}else{
if (row%2 == 0){
c.setBackground(Color.WHITE);
}
else {
c.setBackground(Color.LIGHT_GRAY);
} }
//Add below code here
return c;
}
});
Если вы хотите, чтобы цвет вашей строки с использованием значения конкретной строки, то вы можете> использовать что-то вроде этого. Добавьте эти строки к выше
if(table.getColumnModel().getColumn(column).getIdentifier().equals("Status")){//Here
Статус is column name if(value.toString().equals("OK")){//Here
OK is the value of row
c.setBackground(Color.GREEN);
}