Обновление mysql, когда значение ячейки редактируется в JTable - PullRequest
0 голосов
/ 25 мая 2018

Что ж, у меня есть приложение JTable, которое извлекает записи из базы данных MySql, и отображает их в отсортированном порядке.До сих пор я использовал отдельную JTextArea и JComboBox, чтобы позволить пользователям редактировать таблицу, что-то вроде enter image description here

, поэтому всякий раз, когда кто-то нажимает на строку в таблице, идентификаторзаписи автоматически обновляется ниже в JLabel, который находится перед JComboBox.

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

Ответ с примером кода будет высоко оценен.

1 Ответ

0 голосов
/ 25 мая 2018

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

Вы можете использовать TableModelListener, чтобы получать уведомления об изменениях в TableModel.

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

Строка / столбец находится в TableModelEvent, поэтому вы проверяете столбец, который изменился перед вызовом обновления SQL.

Одна потенциальная проблема с этим заключается в том, что TableModelEvent генерируется дажеесли данные не изменены.То есть, если вы поместите ячейку в режим редактирования и, например, перейдете к следующей ячейке без изменений, данные и событие все равно будут сгенерированы.

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

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