Редактор ячеек JTable в стиле Excel с пустой ячейкой в ​​начале редактированияJAVA

Программисты JAVA общаются здесь
Anonymous
Редактор ячеек JTable в стиле Excel с пустой ячейкой в ​​начале редактирования

Сообщение Anonymous »

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

Я уже могу определить начало/остановку редактирования ячейки, добавив PropertyChangeListener, работающий следующим образом:

Код: Выделить всё

public void propertyChange(PropertyChangeEvent e)
{
//  A cell has started/stopped editing
if ("tableCellEditor".equals(e.getPropertyName()))
{
if (table.isEditing())
processEditingStarted();
else
processEditingStopped();
}
}
Попытка очистить модель таблицы в процессе ProcessEditingStarted() не работает с приведенным ниже кодом:

Код: Выделить всё

private void processEditingStarted()
{
SwingUtilities.invokeLater( this );
}

public void run()
{
row = table.convertRowIndexToModel( table.getEditingRow() );
column = table.convertColumnIndexToModel( table.getEditingColumn() );
oldValue = table.getModel().getValueAt(row, column);
newValue = null;

table.getModel().setValueAt(null, row, column);
table.updateUI();
}
Однако содержимое редактора сохраняет прежнее значение.

Есть ли у кого-нибудь подсказки, как скрыть текущее значение ячейку во время редактирования?

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

Подробнее здесь: https://stackoverflow.com/questions/778 ... tion-start

Вернуться в «JAVA»