Вы можете войти в ячейку в Jtable, щелкнув по ней или войдя в нее с помощью клавиш курсора / вкладок. При использовании defaultCellEditor и JtextField, если вы используете клавиши курсора, курсор вставляется в конец существующего текстового поля, тогда как при двойном щелчке по полю будет выделено последнее слово.
Принимая во внимание, что электронные таблицы (например, Open Office Calc) работают одинаково для двойного щелчка, но если вы вкладываете в поле и начинаете редактировать, поле очищается, и первый нажатый символ становится первым значением в поле и так далее.
Я хочу, чтобы мое приложение работало так же, как и электронная таблица. Подклассом DefaultCellEditor и добавлением
final Caret caret = editField.getCaret();
caret.setDot(0);
editField.setText("");
Я могу заставить его работать так, как я хочу, когда вкладки, но он также очищает поле при двойном щелчке, который я не хочу.
Так, пожалуйста, как я могу определить, было ли редактирование ячейки выполнено с клавиатуры или мыши?