Проверка значения ячейки JTable уникальна для всех значений в табличной модели - PullRequest
0 голосов
/ 01 сентября 2018

У меня есть JTable с 2 ячейками, которые пользователь может редактировать / вводить данные. Первый столбец является столбцом имени, и значение должно быть уникальным, например, они не могут ввести повторяющееся имя. Второй столбец - это столбец типа int, который имеет диапазон ввода от 1 до 999.

В обоих случаях я связал пользовательские реализации DefaultCellEditor со связанными типами классов String.class и Integer.class.

Что я пытаюсь понять, так это где проверка дубликатов должна быть сделана. В то время как редактор ячеек для класса Integer может проверить, что пользователь ввел 1-999, должен ли редактор ячеек проверять модель на предмет уникальности введенного значения или эта проверка должна выполняться в модели таблицы после ячейка потеряла фокус, а метод stopCellEditing() редактора ячеек был вызван и делегирован модели?

В данный момент я подключил модель к редакторам своих ячеек и выполняю там проверку дубликатов, которая при отражении кажется неправильной.

Мне нужно убедиться, что после того, как ячейка потеряла фокус, значение проверяется, и если значение считается недействительным, ячейка восстанавливает фокус, и недопустимый текст полностью выбирается, чтобы они могли просто начать печатать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...