Qt5's documentation doesn't mention that QPlainTextEdit
has setText(QString)
like QTextEdit
does. But, I don't think it's impossible. The only way I found is to use QTextDocument
which can has setPlainText(const QString& text)
. So I have to do this:
plain_text_edit->setDocument(text_document);
The problem is text_document
should be a pointer. Not like QTextEdit
's setText
which can take a local variable as it's parameter. So, is there anyway to do setText
like to QPlainTextEdit
?
It's very simple, just get the current document and set its text:
Alternative way, just call this method:
You could also use text cursor of the editor in many ways to achieve this, most simply by selecting entire existing text (assuming the editor is not empty), then doing
plain_text_edit->TextCursor().insertText(text);
(which replaces currently selected text with usual paste semantics), but for the simple case of replacing all text, that's overcomplicated.