Я пишу реализацию TableCellEditor, которая должна получать некоторые данные из базовой модели TableModel. Для этого мне нужны индексы строк и столбцов для TableModel.
Я хотел бы знать, являются ли индексы, получаемые getTableCellEditorComponent(), координатами представления или координатами модели. Другими словами, нужны ли вызовы table.convertRowIndexToModel()
и table.convertColumnIndexToModel()
в следующем коде? Или можно просто передать эти показатели model.getValueAt()
напрямую?
class MyTableCellEditor implements TableCellEditor {
@Override
public Component getTableCellEditorComponent(JTable table, Object value, boolean isSelected, int row, int column) {
TableModel model = table.getModel();
// is this necessary?
int rowForQueryingModel = table.convertRowIndexToModel(row);
int colForQueryingModel = table.convertColumnIndexToModel(column);
Object valueFromModel = model.getValueAt(rowForQueryingModel, colForQueryingModel);
return createComponent(valueFromModel);
}
...
}
model.getValueAt(…)
, когда параметрvalue
уже предоставляет значение? - person Holger   schedule 12.11.2020