Как изменить цвет каретки в JTable - PullRequest
1 голос
/ 31 октября 2019

Я создаю jTable, где я могу добавить новые строки с текстом, который можно изменить, когда я выбрал строку, я хочу переписать цвет каретки настолько светлый, что не вижу его, поэтому не знаю, гдеЯ пишу. Как я могу изменить цвет каретки?

1 Ответ

2 голосов
/ 31 октября 2019

Что вы можете сделать, это получить компонент редактора вашей ячейки и, если это подкласс JTextComponent, вызвать JTextComponent.setCaretColor. По умолчанию редакторы для JTable являются экземплярами JTextComponent.

Пример:

JTable yourTable = new JTable( ) {
    public Component prepareEditor( TableCellEditor editor, int row, int column ) {
        Component c = super.prepareEditor( editor, row, column );
        if( c instanceof JTextComponent )
            ((JTextComponent) c).setCaretColor( Color.RED );
        return c;
    }
};
...