我的小部件包含很多QTextEdit
控件。实际上,所有这些QTextEdits
都是作为QTreeWidget
. 所有这些控件都是可编辑的。
所以,我需要实现一个统一的“撤消堆栈”,control + "Z/Y"
在我的小部件而不是每个QTextEdit
控件中处理。为此,每当某个人QTextEdit
创建一个新的撤消项目时,我都必须记录下来。因此,当我按下 时control+Z
,它将撤消QTextEdit
控件的编辑(通过调用其 undo() 方法),再次按下可能会撤消另一个QTextEdit
控件的编辑(通过调用其 undo() 方法)。
但是当通过文档搜索时,我发现没有这样的信号通知我为QTextEdit
. 而且我不知道 a 的撤消策略QTextEdit
,有时多个按键被压缩为一个单个撤消项,因此使用按键事件过滤器并记录我自己的QUndoCommand
可能不是一个好主意,没有提到QTextEdit
提供自己的便捷方法 undo()/重做()。
我怎样才能解决这个问题?