我可以将UndoableEditListener添加到JTable吗?例如,使用JTextField,我们这样做:
textField = new JTextField();
Document doc = textField.getDocument();
doc.addUndoableEditListener(new MyUndoableEditListener());
答案 0 :(得分:3)
您可以通过下一种方式为CellEditor
的{{1}}执行此操作:
将JTabel
与DefaultCellEditor
:
JTextField
JTextField field = new JTextField();
field.getDocument().addUndoableEditListener(new UndoableEditListener() {
@Override
public void undoableEditHappened(UndoableEditEvent arg0) {
System.out.println("profit");
}
});
DefaultCellEditor editor = new DefaultCellEditor(field);
table.getColumnModel().getColumn(COLUMN_INDEX).setCellEditor(editor);
是您所需列的table
和JTable
索引。
答案 1 :(得分:1)
没有人停止使用将此侦听器分配给Document
的文本字段单元格编辑器的JTable
:)对于您的表使用自定义单元格编辑器,请将UndoableEditListener
实现为编辑的文本组件的文档。