java - 扩展 Swing 的 UndoManager 以提供重复和多个撤消/重做

标签 java swing undo undo-redo

我的任务是向应用程序添加撤消/重做/重复功能。我目前正在研究是否可以使用 Swing 的 UndoManager。

除了通常的撤消和重做按钮之外,我还需要提供一次撤消或重做多个编辑的功能(像 MS Office 一样下拉 UI),并重复选定的编辑。

我相信我可以使用 UndoManager 进行多次撤消和重做。它提供了多次撤消和重做的方法。为了构建 UI,我可以扩展 UndoManager 以公开它所保存的编辑内容。

但是,我不确定是否可以使用 UndoManager 来重复选择的操作。我的第一个想法是扩展 UndoManager 并添加重复(编辑)方法。此方法将克隆或复制编辑,重做副本,然后将副本放置在撤消堆栈的顶部。仅当实现了 Clonable 时,编辑才可重复。

这看起来合理吗?有更好的解决方案吗?我应该自己滚动而不是 UndoManager 吗?提前致谢。

最佳答案

关于java - 扩展 Swing 的 UndoManager 以提供重复和多个撤消/重做,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12351570/

相关文章:

java - 为什么我不适用于 javafx 上的参数?

java - Java 可以处理 Expando 吗?

linux - 如何在终端中记住多个选项卡的 session ? (类似于 FF session 管理器)

java - UndoManager 手动添加 UndoableEdit 以使其与 JTabbedPane 一起使用

java - 使用 JOOQ 替换 MySQL 表中的字符串

java - 如何使用混合数据类型执行约束求解?

java - Eclipse 中的 Napkin 自定义 LookAndFeel

java - JFrame 显示大小不同

java - 可以使用 JAXX 吗?

php - 恢复sql语句的函数