Я создал свой собственный 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», затем, если я перемещаю мышь в ячейку в другом столбце или перемещаюсь в пустое место в таблице (это не имеет rows), специальная ячейка bgColor по-прежнему имеет цвет hoveredRowBG. Я хочу убрать этот всплывающий цвет, когда происходит такое действие.
Любые идеи?