У меня есть JTable table1
с 5 строками и 5 столбцами, и я хотел бы изменить цвет фона 3-го столбца/ячейки 2-й строки, когда я вызываю такую функцию, как
изменитьBgColor (строка, столбец);
Это возможно?
У меня есть JTable table1
с 5 строками и 5 столбцами, и я хотел бы изменить цвет фона 3-го столбца/ячейки 2-й строки, когда я вызываю такую функцию, как
изменитьBgColor (строка, столбец);
Это возможно?
Переопределить prepareRenderer для этого.
Пример:
public Component prepareRenderer (TableCellRenderer renderer, int rowIndex, int columnIndex){
Component componenet = super.prepareRenderer(renderer, rowIndex, columnIndex);
if(rowIndex % 2 == 0) {
componenet.setBackground(Color.RED);
} else {
componenet.setBackground(Color.GREEN);
}
return componenet;
}
Здесь я окрашиваю все строки в четных позициях как RED
, а все строки в нечетных позициях как GREEN
.
Насколько рассматривается ваша проблема. Используйте тот же подход, просто используйте ограничение с указанием,
if(rowIndex == 2 && columnIndex == 3) {
componenet.setBackground(Color.RED);
}
Кроме указанной выше ячейки, все ячейки получат цвет по умолчанию.