|
|
1
7
你可以用 Qt's undo framework . |
|
|
2
5
实现撤消的典型方法是表示用户完成的每个操作,并存储它们。您还希望能够计算给定操作的倒数。 因此,对于插入到文本缓冲区中的操作,将存储插入的文本以及插入发生的位置。然后,在相同的位置和插入文本的大小处,反转变为删除。 当用户要求应用程序撤消时,只需查看最近存储的操作,然后执行相反的操作。如果您现在不删除“已花费”的操作,也要记住它,您可以通过在操作历史中移动另一种方式来实现重做。 请注意,这是一个抽象和一般的解释;正如其他答案所指出的,qt已经有了一个用于实现撤销的框架,所以您当然应该首先研究一下这个问题。 |
|
|
3
2
你可以使用 Command Pattern 实现撤消/重做 |
|
|
4
1
qlineedit具有内置的撤消/重做支持,导出为公共插槽,选中: http://doc.trolltech.com/4.7/qlineedit.html#undo |