Qt QPlainTextEdit用法詳解

2021-10-13 01:35:55 字數 1108 閱讀 3505

qplaintextedit 是乙個多行文字編輯器,用於顯示和編輯多行簡單文字。另外,還有乙個 qtextedit 元件,是乙個所見即所得的可以編輯帶格式文字的元件,以 html 格式標記符定義文字格式。

例項 samp4_6 演示 qplaintextedit(和qcombobox)的使用,其執行時介面如圖 1 所示。

圖 1 例項執行介面

如果要將 qplaintextedit 元件裡顯示的所有文字讀取出來,有乙個簡單的函式 toplaintext() 可以將全部文字內容輸出為乙個字串,其定義如下:

qstring qplaintextedit::toplaintext() const

但是如果要逐行讀取 qplaintextedit 元件裡的字串,則稍微麻煩一點。

下面是圖 1 視窗中「文字框內容新增到 combobox」按鈕的響應**,它將 plaintextedit 裡的每一行作為乙個項新增到 combobox 裡:

void widget::on_btntocombobox_clicked()

}qplaintextedit 的文字內容以 qtextdocument 型別儲存,函式 document() 返回這個文件物件的指標。

qtextdocument 是記憶體中的文字物件,以文字塊的方式儲存,乙個文字塊就是乙個段落,每個段落以回車符結束。qtextdocument 提供一些函式實現對文字內容的訪問:

乙個 document 有多個 textblock,從 document 中讀取出的乙個文字塊型別為 qtextblock,通過qtextblock::text()函式可以獲取其純文字文字。

qplaintextedit 是乙個多行文字編輯框,有自帶的右鍵快捷選單,可實現常見的編輯功能。在 ui 設計器裡,選擇為 plaintextedit 的customcontextmenurequested()訊號生成槽函式,編寫如下的**,就可以建立並顯示 qplaintextedit 的標準快捷選單:

純文字

複製

void widget::on_plaintextedit_customcontextmenurequested(const qpoint &pos)

nginx limit req zone用法詳解

nginx可以使用ngx http limit req module模組的limit req zone指令進行限流訪問,防止使用者惡意攻擊刷爆伺服器。ngx http limit req module模組是nginx預設安裝的,所以直接配置即可。首先,在nginx.conf檔案中的http模組下配置...

優先佇列priority queue 用法詳解

優先佇列是佇列的一種,不過它可以按照自定義的一種方式 資料的優先順序 來對佇列中的資料進行動態的排序 每次的push和pop操作,佇列都會動態的調整,以達到我們預期的方式來儲存。例如 我們常用的操作就是對資料排序,優先佇列預設的是資料大的優先順序高 所以我們無論按照什麼順序push一堆數,最終在佇列...

優先佇列priority queue 用法詳解

優先佇列priority queue 用法詳解 優先佇列是佇列的一種,不過它可以按照自定義的一種方式 資料的優先順序 來對佇列中的資料進行動態的排序 每次的push和pop操作,佇列都會動態的調整,以達到我們預期的方式來儲存。例如 我們常用的操作就是對資料排序,優先佇列預設的是資料大的優先順序高 所...