JavaTableCellRenderer, показывающий поведение Stange
Я рендеринг древовидной таблицы (каждый узел расширяется). Это статическая таблица, и мне нужно выделить определенные ячейки. Когда я делаю это с помощью TableCellRenderer jTable, это показывает странное поведение.
Например, когда есть три столбца, он излишне выделяет конкретную ячейку в первом столбце, а когда есть четыре столбца, он выделяет две конкретные ячейки в первом столбце. Я не хочу выделять ячейки в первом столбце. Я использую следующий код:
public Component prepareRenderer(TableCellRenderer renderer, int index_row, int index_col) {
Component comp = super.prepareRenderer(renderer, index_row, index_col);
comp.setBackground(Color.white);
Object obj1 = getModel().getValueAt(index_row, index_col);
if (!obj1.toString().equals(getModel().getValueAt(index_row, 1))) {
if (obj1.toString().equals(" ")) {
comp.setBackground(Color.red);
} else if (index_col != 0) {
comp.setBackground(Color.green);
}
}
return comp;
}