Qt撤销回/撤框架
文章平均质量分 77
友善啊,朋友
这个作者很懒,什么都没留下…
展开
-
Qt撤销回/撤框架:QUndoStack
一、描述1、QUndoStack类是QUndoCommand对象的堆栈。2、QUndoStack跟踪当前命令。 这是下一次对redo()的调用将执行的命令。该命令的索引由index()返回。1.1、撤销和回撤动作QUndoStack提供了方便的撤消和回撤QAction对象,可以将其插入菜单或工具栏。撤消或回撤命令时,QUndoStack将更新这些操作的文本属性以反映它们将触发的更改。当没有命令可用于撤消或重做时,这些操作也将被禁用。这些动作由createUndoAction()和create原创 2021-05-09 16:24:44 · 5984 阅读 · 0 评论 -
Qt撤销回/撤框架:QUndoCommand
一、描述1、QUndoCommand表示对文档的单个编辑操作。例如,在文本编辑器中插入或删除文本块。QUndoCommand可以使用redo()将更改应用于文档,并使用undo()撤消更改。这些功能的实现必须在派生类中提供。如:2、QUndoCommand对象由它们被压入的堆栈所拥有。如果命令已被撤消并且推送了新命令,则QUndoStack会删除该命令。例如: MyCommand *command1 = new MyCommand(); stack->push(command1);原创 2021-05-08 00:15:35 · 4743 阅读 · 0 评论 -
【翻译】Qt撤销/回撤框架概述
一、简介Qt的撤销/回撤框架是基于命令(Command)模式的实现,用于在应用程序中实现撤销/回撤功能。命令模式基于这样一种思想:应用程序中的所有编辑都是通过创建命令对象的实例来完成的。命令对象将更改应用于文档并存储在命令堆栈中。此外,每个命令都知道如何撤消其更改以使文档恢复到以前的状态。只要应用程序只使用命令对象来更改文档的状态,就可以通过向下遍历堆栈并依次调用undo来撤消一系列命令。也可以通过向上遍历堆栈并对每个命令调用redo来重做一系列命令。二、类该框架包括四个类:QUndoC原创 2021-05-07 22:43:42 · 968 阅读 · 0 评论