我需要验证我的源文件,甚至省略一些“服务”行,
所以我用appendPlainText()QPlainTextEdit做到了。追加一行
当然意味着更改,因此在加载文件后,星号表示文件已更改。我希望有更一致的行为,即加载后未设置此状态信号。加载文件后如何重置?

最佳答案

您可以通过两个 QObject::blockSignals 调用来包围发出有害信号的代码部分:

textEdit->blockSignals(true);
// load from file
textEdit->blockSignals(false);

或直接在QTextEdit::document上(我想会减少其他信号):
textEdit->document()->blockSignals(true);
// load from file
textEdit->document()->blockSignals(false);

甚至在加载后立即调用 QTextEdit::setModified (将发出两个信号)。

尝试其中的每一种,并让我知道它们是否不起作用。

10-07 21:44