原創(chuàng)|產(chǎn)品更新|編輯:龔雪|2022-02-21 09:57:08.190|閱讀 244 次
概述:本教程主要介紹如何使用Qt Creator創(chuàng)建一個小型基于Qt Widget應(yīng)用程序,歡迎下載工具體驗!
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關(guān)鏈接:
textfinder.h 文件已經(jīng)包含必要的#include、構(gòu)造函數(shù)、析構(gòu)函數(shù)和UI對象,您需要添加一個私有函數(shù)loadTextFile() 來讀取和顯示中輸入文本文件的內(nèi)容。
1. 在 Edit 視圖的 Projects 視圖中,雙擊 textfinder.h 文件將其打開來進(jìn)行編輯。
2. 在 Ui::TextFinder 指針之后的私有部分中添加一個私有函數(shù),如以下代碼片段所示:
private slots: void on_findButton_clicked(); private: Ui::TextFinder *ui; void loadTextFile();
現(xiàn)在header文件已經(jīng)完成,轉(zhuǎn)到源文件 textfinder.cpp。
1. 在Edit視圖的Projects視圖中,雙擊 textfinder.cpp 文件將其打開來進(jìn)行編輯。
2. 添加代碼來使用QFile 加載文本文件,使用 QTextStream 讀取它,然后使用 QTextEdit::setPlainText() 在 textEdit 上顯示它,以下代碼片段說明了這一點:
void TextFinder::loadTextFile()
{
QFile inputFile(":/input.txt");
inputFile.open(QIODevice::ReadOnly);
QTextStream in(&inputFile);
QString line = in.readAll();
inputFile.close();
ui->textEdit->setPlainText(line);
QTextCursor cursor = ui->textEdit->textCursor();
cursor.movePosition(QTextCursor::Start, QTextCursor::MoveAnchor, 1);
}
3. 要使用 QFile 和 QTextStream,請將以下 #includes 添加到 textfinder.cpp:
#include <QFile> #include <QTextStream>
4. 對于 on_findButton_clicked() slot,添加代碼來提取搜索字符串并使用QTextEdit::find() 函數(shù)在文本文件中查找搜索字符串,以下代碼片段說明了這一點:
void TextFinder::on_findButton_clicked()
{
QString searchString = ui->lineEdit->text();
ui->textEdit->find(searchString, QTextDocument::FindWholeWords);
}
5. 完成這兩個函數(shù)后,在構(gòu)造函數(shù)中添加一行調(diào)用 loadTextFile(),如以下代碼片段所示:
TextFinder::TextFinder(QWidget *parent)
: QWidget(parent), ui(new Ui::TextFinder)
{
ui->setupUi(this);
loadTextFile();
}
on_findButton_clicked() slot在 uic 生成的 ui_textfinder.h 文件中由這行代碼自動調(diào)用:
QMetaObject::connectSlotsByName(TextFinder);
Qt技術(shù)交流群:166830288 歡迎一起進(jìn)群討論
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請郵件反饋至chenjj@ke049m.cn
文章轉(zhuǎn)載自:慧都網(wǎng)