我在我的主窗口类中有一个QTableWidget。 我找不到能够撤消指定单元格的文本更改的功能。 我想要做的是:在Qt中取消QTableWidget中的单个单元格?
void myCellUndoFunc(int row, int col)
{
table->item(row, col)->undo(); //table is my QTableWidget
}
的问题是,有没有这样的撤销()。 所以我的问题是,可以有一个解决这个问题的方法,也许一些foo-doo组合SIGNAL的& SLOT的?
谢谢! PS:请不要建议使用Model/View框架,因为我在我的应用程序中广泛使用了QTableWidget。对不起,相同。
这可能会占用过多的内存,但也许会创建一个存储最后一个一个细胞的状态。如果你想撤消,只需弹出堆栈顶部的值,并将单元格设置为现在的顶层。 –
@Muckle_ewe,这是我目前正在做的事情,并不满意。这就是为什么我问这个问题:) –
我明白了。那么在那种情况下,我并不完全确定你是如何做到的。也许你已经知道了这一点,但如果你决定采用堆栈方法,那么就有一个QUODStack类。它也有一个撤销插槽,所以你可以使用一个信号插槽的方法,最小的额外编码。 http://qt-project.org/doc/qt-4.8/qundostack.html –