QTextEdit選擇文字
最近接觸QTextEdit比較多,想讓使用者在單擊QTextEdit的時候可以選擇特定的文字。但查了一下文件沒有發現有直接的函式可以用,後來知道跟游標相關和選擇文字相關的是QTextCursor類。原本以為會有setSelectionText之類的函式,但只看到一個select函式,這個函式沒有提供起始點和終止點的引數。後來才發現了怎麼用的。具體方法如下:
1.建立一個游標。
2.將游標移至選擇的起始位置。
3.將游標移至選擇的結束位置。
4.進行選擇。
5.設定新的游標。
用程式碼來描述的話可以是這樣的:
QTextCursor cur = edit->textCursor();//返回當前游標物件
cur.setPosition(2, QTextCursor::MoveAnchor);//移到起始位置
cur.movePosition(QTextCursor::NoMove, QTextCursor::keepAnchor, 3);//移動結束位置
cur.select(QTextCursor::WordUnderCursor);//選擇
edit->setTextCursor(cur);
這樣就選擇了位置是2到4三個字元的文字了。
1、向QTextEdit中當前游標位置新增一行字串message
ui.messageTextEdit->textCursor().insertText(message+"\n");
2、向QTextEdit中末尾追加一行字串message
QString content = ui.contentTextEdit->append(message+"\n");
3、讀取QTextEdit的值
QString content = ui.contentTextEdit->toPlainText();
4、游標移到末尾
ui.textBrowser_2->moveCursor(QTextCursor::End);