1

我正在使用 UndoRedo.Manager 在 Netbeans RCP 应用程序中实现撤消/重做功能。undoableEditListener 可以添加到任何 Document 中,这将其使用限制为与文本相关的字段。有谁知道我如何向没有文档的元素添加这样的监听器,比如 JCheckBox?

4

1 回答 1

1

只需创建自定义 CompoundEdits 甚至单独的编辑。参见例如合并在一个http://java-sl.com/tip_merge_undo_edits.html中的编辑

我认为您只需要保留自己的事件堆栈并实现不会更改模型(文档)但更改状态的自定义 UndoableEdits。换句话说,您需要更复杂的模型来将复选框状态和 Document 合二为一。所有复杂的模型更改(状态更改或文档更改)都应由自定义 UndoableEdit 类表示。类实例可以是文档编辑事件的包装器,也可以只是自定义事件。

于 2012-03-28T08:36:58.403 回答