Qt使用教程:创建一个基于Qt部件的应用程序(三)
在创建一个基于Qt部件的应用程序(二)一文中,我们为大家介绍了填充缺失部分的设计用户界面以及完成头文件等内容。接下来在本文中,我们将继续为大家介绍填充缺失部分的余下所有内容,欢迎品鉴!
完成源文件
在上文中,我们完成了头文件,现在我们移动到源文件,textfinder.cpp。
1.在Edit视图的Projects面板中,双击textfinder.cpp来打开它进行编辑。
2.使用来新增代码加载一个文本文件,然后使用读取它,最后在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.想要使用和,那么添加下面的#includes到textfinder.cpp中:
#include <QFile> #include <QTextStream>
4.对于on_findButton_clicked() slot来说,新增代码到提取的搜索字符串中,并且使用QTextEdit::find()函数在文本文件中查询搜索字符串。下面的代码片段说明了这一点:
void TextFinder::on_findButton_clicked() { QString searchString = ui->lineEdit->text(); ui->textEdit->find(searchString, QTextDocument::FindWholeWords); }
5.一旦两个功能被完成之后,在构造函数中添加一行来调用loadTextFile(),下面的代码说明了这一点:
TextFinder::TextFinder(QWidget *parent) : QWidget(parent), ui(new Ui::TextFinder) { ui->setupUi(this); loadTextFile(); }
该on_findButton_clicked() slot会通过下面的代码在生成的ui_textfinder.h文件中自动被调用。
QMetaObject::connectSlotsByName(TextFinder);
创建一个资源文件
在你嵌入的输入文本文件中,你需要一个资源文件(.qrc)。该输入文件可以任何具有文本段落的.txt文件。创建命名为input.txt的文本文件,并将其存储在textfinder文件夹中。
要添加一个资源文件:
1.选择File > New File or Project > Qt > Qt Resource File > Choose。
打开Choose the Location对话框。
2.在Name字段中输入textfinder。
3.在Path字段中输入 C:\Qt\examples\TextFinder,然后点击Next或Continue。打开Project Management对话框。
4.在Add to project字段中,选择TextFinder.pro然后点击Finish或Done在代码编辑器中打开该文件。
5.选择Add > Add Prefix。
6.在Prefix字段中,更换一个带斜杠(/)的默认前缀。
7.选择 Add > Add Files来定位并添加input.txt。
编译和运行程序
现在你已经拥有了所有必要的文件,点击运行按钮来编译和运行程序。
购买Qt Enterprise最新正版授权!详情请""
集团授权强势登陆!满额即送好礼哦,精彩不容错过!优惠详情点击查看>>