日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【Qt】简单Qt文本查找功能

發布時間:2024/4/24 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【Qt】简单Qt文本查找功能 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

00. 目錄

文章目錄

    • 00. 目錄
    • 01. 概述
    • 02. 開發環境
    • 03. 程序設計
    • 04. 執行結果
    • 05. 附錄

01. 概述

以前都用設計器設計界面,而這次我們用代碼實現一個簡單的查找對話框。

02. 開發環境

Windows系統:Windows10

Qt版本:Qt5.15或者Qt6

03. 程序設計

3.1 到mainwindow.h文件中添加類的前置聲明

前置聲明所在的位置跟頭文件包含的位置相同。

//前置聲明 class QLineEdit; class QDialog;

然后在private部分添加對象定義:

QLineEdit *findLineEdit; QDialog *findDlg;

添加一個私有槽聲明:

private slots:void showFindText();

3.2 在構造函數中進行初始化操作,即添加如下代碼:

findDlg = new QDialog(this);findDlg->setWindowTitle(tr("查找"));findLineEdit = new QLineEdit(findDlg);QPushButton *btn = new QPushButton(tr("查找下一個"), findDlg);QVBoxLayout *layout = new QVBoxLayout(findDlg);layout->addWidget(findLineEdit);layout->addWidget(btn);connect(btn, &QPushButton::clicked, this, &MainWindow::showFindText);

創建了一個對話框,然后將一個行編輯器和一個按鈕放到了上面,并使用布局管理器進行布局。最后將按鈕的單擊信號關聯到了自定義的顯示查找結果槽上。

3.3 槽函數相關實現

void MainWindow::showFindText() {QString str = findLineEdit->text();bool ret = ui->textEdit->find(str, QTextDocument::FindBackward);if (!ret){QMessageBox::warning(this, tr("查找"), tr("找不到%1").arg(str));}}void MainWindow::on_actionfind_triggered() {findDlg->show(); }

04. 執行結果

程序執行結果如下:

05. 附錄

源碼下載:【Qt】簡單Qt文本查找功能.rar

總結

以上是生活随笔為你收集整理的【Qt】简单Qt文本查找功能的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。