Qt5のドキュメントには、QPlainTextEdit
がQTextEdit
のようにsetText(QString)
を持っているとは記載されていません。しかし、それは不可能ではないと思います。私が見つけた唯一の方法は、setPlainText(const QString& text)
を持つことができるQTextDocument
を使用することです。だから私はこれをしなければなりません:
plain_text_edit->setDocument(text_document);
問題は text_document
はポインタでなければなりません。パラメータとしてローカル変数を取ることができるQTextEdit
のsetText
とは異なります。それで、とにかくsetText
をQPlainTextEdit
のようにすることはありますか?
現在のドキュメントを取得する と そのテキストを設定する のように非常にシンプルです。
_plain_text_edit->document()->setPlainText(text);
_
別の方法として、 このメソッド を呼び出すだけです:
_plain_text_edit->setPlainText(text);
_
エディタのテキストカーソル を使用してこれを実現することもできます。最も簡単な方法は、 selecting 既存のテキスト全体(エディタが空でないと仮定)で、次に- plain_text_edit->TextCursor().insertText(text);
(現在選択されているテキストを通常の貼り付けセマンティクスで置き換えます)が、すべてのテキストを置き換えるという単純なケースでは、複雑すぎます。