2016-02-28 124 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(發出兩個信號)。

嘗試每個這些出來,並告訴我,如果他們中的任何一個不工作。

相關問題