#java #swing #jtable #tablecellrenderer
Вопрос:
Я использую TableCellRenderer для визуализации кнопки в ячейке для JTable, созданной с помощью Matisse в netbeans.
Моя проблема в том … При двойном щелчке по кнопке я могу добраться до текстового поля позади. Поэтому я хочу сделать текстовое поле недоступным для редактирования.
На данный момент мои setEnabled имеют значение true: table_watchlistMain.setEnabled(true); Мне это нужно, потому что я хочу, чтобы пользователь мог выбрать строку …
Я использую модель по умолчанию… нужно ли мне создавать свою собственную модель?
Я просто ищу решение, чтобы включить jtable, но не редактировать. это возможно??
Ответ №1:
DefaultTableModel.isCellEditable()
Метод всегда возвращает true
:
Возвращает значение true независимо от значений параметров.
Так что, да, вам следует создать свою собственную модель, например:
public class MyTableModel extends DefaultTableModel
{
@Override
public boolean isCellEditable(int row, int column)
{
return false;
}
}