2016-02-28 82 views
1

我需要验证我的源文件,甚至省略一些“服务”行, ,所以我使用appendPlainText()QPlainTextEdit。附加一行 当然意味着更改,因此加载文件后,星号表示文件已更改。我想有更加一致的行为,加载后,这个状态信号没有设置。我在加载文件后如何重置它?有没有简单的方法来改变QTextEdit中的“文本更改”状态?

回答

1

可以围绕该两个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(发出两个信号)。

尝试每个这些出来,并告诉我,如果他们中的任何一个不工作。

相关问题