Disabling User Edits in a JTable Component
User editing can be disabled in two places. By disabling edits in the
model, no table component using that model will allow editing by the
user. By disabling edits in the table component, only that component
disallows edits; other table components using the same model will
allow editing.
Disabling edits requires subclassing either the JTable or
TableModel class.
Note: Although user editing is disabled, programmatically changing
values in the model is still possible.
// Create a JTable that disallow edits
JTable table1 = new JTable() {
public boolean isCellEditable(int rowIndex, int vColIndex) {
return false;
}
};
// Create a JTable based on the same model as table1 but allows edits
JTable table2 = new JTable(table1.getModel());
// Create a model that disallows edits; JTable's using this model will not allow edits
TableModel model = new DefaultTableModel() {
public boolean isCellEditable(int rowIndex, int mColIndex) {
return false;
}
};
Post a comment