有可能以简单的方式获取JTextArea
中的更改列表吗?
我的意思是我想要检索JTextArea
中输入/显示的所有文本,例如ReDo / UnDo。有可能回来,比如“CTRL + Z”
答案 0 :(得分:6)
在我使用UndoManager管理swing文本组件更改的日子里。
你可以在这里找到api:Oracle JavaDoc UndoManager
此处的用法示例:Java2s example UndoManager
HTH
<强>更新强>:
UndoManager 扩展 CompoundEdit ,声明UndoableEdit对象的受保护矢量“ 编辑 ”。
您可以通过编写扩展UndoManager的类并提供公共getter metod列表getChangesVecor来访问该Vector,以列出更改。
答案 1 :(得分:1)
如果您正在更改区域文本后,可以尝试以下操作之一:
向JTextArea添加某种形式的侦听器,每次文本更改时都将信息存储为arrayList中的String,尽管如果您期望任何更改,只有少量更改,此解决方案可能效率极低。
可能是更好的选择,将信息存储在文本文件/数据库中。这会创建信息的永久记录/日志,如果需要,可以由未来的程序读取。
祝你好运!