I have a QPlainTextEdit and I'm building a progress dialog for it when opening large files. Rather than using setText, I want to add one line of text at a time by using QTextCursor.insertText. The problem is that when I do it this way, I can undo each line that was added... is there a way to clear the undo history?
Use QTextDocument::clearUndoRedoStacks. Code:
editor->document()->clearUndoRedoStacks(); // default clears both
See docs if you want to clear just undo. Also, it's good idea to read docs of QTextDocument (and QTextCursor) when working with the editor widgets. Lots of functionality is "hidden" there.
来源:https://stackoverflow.com/questions/25321617/qt-clear-undo-history-in-a-qtextedit-qplaintextedit