qt - 对 QTableWidget 执行撤消和重做操作

标签 qt qtablewidget qmodelindex

我正在使用QTableWidget来显示表格来绘制图表。用户可以执行的操作:输入、复制、剪切和粘贴、添加行、添加列、插入、删除等。所有这些操作应该堆叠起来,以便用户可以撤消或重做所有操作。

我查看了 QUndoStack,但在 QTableWidget 的上下文中,我不确定必须将哪些数据或对象推送到堆栈。

最佳答案

对我来说,您必须记住在从 QUndoCommand 继承的类中编辑之前和之后的值,以便 undo()redo() 可以恢复你想要的状态

关于qt - 对 QTableWidget 执行撤消和重做操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35888361/

相关文章:

python - 从 QClipboard 复制/粘贴文本会卡住程序

c++ - setQuitOnLastWindowClosed(true) : Is widget. hide() == widget.close()?

c++ - Qt。使 QGraphicsItem 始终跟随光标

c++ - CodeBlocks Qt HelloWorld.exe 已停止工作 (C++)

qt - 如何防止用户调整 QTableWidget 列的大小?

c++ - QTableWidget 在不处于焦点时挂起/暂停

QML TreeView 的 C++ 模型

qt - 如何循环 QAbstractItemView 索引?

c++ - “QObject”是 'Recorder' 的不明确基数

c++ - 从 QAbstractItemModel 返回自定义用户类型