有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java Netbeans编辑器如何知道文件在撤消后不会被修改?

Netbeans使用标准的UndoManagerAPI来实现撤销功能。但无论是标准javax.swing.undo.UndoManager还是org.openide.awt.UndoRedo.Manager都没有任何方法将状态标记为已保存并检查修改状态。尽管如此,如果更改文件并按“撤消”,该文件将被标记为未修改。他们是怎么做到的?如果使用Netbeans RCP应用程序,我需要为我的(非文本)编辑器提供相同的功能


共 (1) 个答案

  1. # 1 楼答案

    我弄明白了。当有人保存文件时,CloneableEditSupport添加UndoableEdit。当有人从保存状态撤消或重做到保存状态时,此编辑会发出信号。此外,它还包装下一次编辑(直到第一次重要编辑),以拦截保存状态的重做,并撤销保存状态的重做

    只有在生成的所有UndoableEdit都很重要时,这个技巧才有效