Я создал свой собственный TableCellEditor для столбца JTable, чтобы выполнять некоторые специальные операции при редактировании ячеек этого столбца.
В этом TableCellEditor я определяю цвет при наведении ячейки в этом столбце, например:
public Component getTableCellEditorComponent(JTable table, Object value,boolean isSelected, int row, int column) {
if( isSelected ) // User clicked on this cell.
setBackground( selectedRowBG );
else if( rowIndexToHighlight == row ) // user is hovering on this cell.
setBackground( hoveredRowBG );
else // Set default cell color.
setBackground( unHoveredRowBG );
return this;
}
Моя проблема заключается в том, что, когда я наводю указатель мыши на ячейку в этом специальном столбце, цвет фона ячейки становится «hoveredRowBG», а затем, если я перемещаюсь мышью на ячейку в другом столбце или перемещаюсь в пустое место в таблице Это не имеет строк), специальная ячейка bgColor по-прежнему имеет цвет "hoveredRowBG".
Я хочу удалить этот цвет, когда такое происходит.
Есть идеи?