如何为QPlainTextEdit设置文本?

时间:2015-05-23 04:49:50

标签: qt qt5 settext

Qt5的文档没有提及QPlainTextEdit setText(QString) QTextEdit的{​​{1}}。但是,我不认为这是不可能的。我找到的唯一方法是使用QTextDocumentsetPlainText(const QString& text)可以plain_text_edit->setDocument(text_document); 。所以我必须这样做:

text_document

问题是QTextEdit应该是一个指针。与setText的{​​{1}}不同,它可以将局部变量作为参数。那么,无论如何要setText喜欢QPlainTextEdit吗?

1 个答案:

答案 0 :(得分:22)

这很简单,只有get the current documentset its text

plain_text_edit->document()->setPlainText(text);

替代方式,只需致电this method

plain_text_edit->setPlainText(text);

您还可以通过多种方式使用text cursor of the editor来实现此目的,最简单的方法是selecting整个现有文本(假设编辑器不为空),然后执行plain_text_edit->TextCursor().insertText(text);(当前替换documentation选择的文本与通常的粘贴语义),但对于替换所有文本的简单情况,这是过于复杂的。