QtCreator实现文本查找

上传人:平*** 文档编号:48809634 上传时间:2018-07-20 格式:PPT 页数:35 大小:1.68MB
返回 下载 相关 举报
QtCreator实现文本查找_第1页
第1页 / 共35页
QtCreator实现文本查找_第2页
第2页 / 共35页
QtCreator实现文本查找_第3页
第3页 / 共35页
QtCreator实现文本查找_第4页
第4页 / 共35页
QtCreator实现文本查找_第5页
第5页 / 共35页
点击查看更多>>
资源描述

《QtCreator实现文本查找》由会员分享,可在线阅读,更多相关《QtCreator实现文本查找(35页珍藏版)》请在金锄头文库上搜索。

1、v专 业:嵌入式专业QtQt Creator实现文本编辑实现功能:以前都用设计器设计界面,而这次我们用代码实现 一个简单的查找对话框。对于怎么实现查找功能的 ,我们详细地分步说明了怎么进行类中方法的查找 和使用。其中也将Qt Creator智能化的代码补全功 能和程序中函数的声明位置和定义位置间的快速切 换进行了介绍。 Qt Creator实现文本编辑实现过程: 1.首先还是保存以前的工程,然后再将其打开。 我们发现Qt Creator默认的字体有点小,可以按下 Ctrl键的同时按两下+键,来放大字体。也可以选择 Edit-Advanced-Increase Font Size。Qt Crea

2、tor实现文本编辑Qt Creator实现文本编辑实现过程: 2.在mainwindow.h中加入#include 的头文件包含,在private中添加 QLineEdit *find_textLineEdit; /声明一个行编辑 器,用于输入要查找的内容 在private slots中添加 void show_findText(); 在该函数中实现查找字符串的功能。Qt Creator实现文本编辑实现过程: 3.进入查找菜单的触发事件槽函数,更改如下。 void MainWindow:on_action_Find_triggered() QDialog *findDlg = new QDia

3、log(this); /新建一个对话框,用于查找操作,this表明它的父窗 口是MainWindow。 findDlg-setWindowTitle(tr(“查找“); /设置对话框的标题Qt Creator实现文本编辑实现过程: 3.进入查找菜单的触发事件槽函数,更改如下。(续) find_textLineEdit = new QLineEdit(findDlg); /将行编辑器加入到新建的查找对话框中 QPushButton *find_Btn = new QPushButton(tr(“ 查找下一个“),findDlg); /加入一个“查找下一个”的按钮 QVBoxLayout* lay

4、out = new QVBoxLayout(findDlg); layout-addWidget(find_textLineEdit);Qt Creator实现文本编辑实现过程: 3.进入查找菜单的触发事件槽函数,更改如下。 (续) layout-addWidget(find_Btn); /新建一个垂直布局管理器,并将行编辑器和按钮加 入其中 findDlg -show(); /显示对话框 connect(find_Btn,SIGNAL(clicked(),this,SLOT(s how_findText(); /设置“查找下一个”按钮的单击事件和其槽函数的关 联 Qt Creator实现文本

5、编辑实现过程: 4. 这里我们直接用代码生成了一个对话框,其中一个 行编辑器可以输入要查找的字符,一个按钮可以进行 查找操作。我们将这两个部件放到了一个垂直布局管 理器中。然后显示这个对话框。并设置了那个按钮单 击事件与show_findText()函数的关联。Qt Creator实现文本编辑实现过程: 5.下面写实现查找功能show_findText()函数。 void MainWindow:show_findText()/“查找下一 个”按钮的槽函数 QString findText = find_textLineEdit-text(); /获取行编辑器中的内容 先用一个QString类的

6、对象获得要查找的字符。然 后我们一步一步写查找操作的语句。Qt Creator实现文本编辑实现过程: 6.在下一行写下ui,然后直接按下键盘上的“”或“.”, 因为ui是指针对象,所以自动生成“-”号,而且弹出 了ui中的所有部件名称的列表。如下图。Qt Creator实现文本编辑实现过程:Qt Creator实现文本编辑实现过程: 7.我们用向下的方向键选中列表中的textEdit。或者我 们可以先输入text,这时能缩减列表的内容。 Qt Creator实现文本编辑实现过程: 8.如上图我们将鼠标放到textEdit上,这时便出现了 textEdit的类名信息,且后面出现一个F1按键。我们

7、 按下键盘上的F1,便能出现textEdit的帮助。 Qt Creator实现文本编辑实现过程: 9.在帮助中向下拉,会发现这里有一个find函数。 Qt Creator实现文本编辑实现过程: 10.我们点击find,查看其详细说明。 Qt Creator实现文本编辑实现过程: 11.可以看到find函数可以实现文本编辑器中字符 串的查找。其中有一个FindFlags的参数,我们点 击它查看其说明。 Qt Creator实现文本编辑实现过程: 12.可以看到它是一个枚举变量(enum),有三个 选项,第一项是向后查找(即查找光标以前的内容 ,这里的前后是相对的说法,比如第一行已经用完 了,光标

8、在第二行时,把第一行叫做向后。),第 二项是区分大小写查找,第三项是查找全部。 Qt Creator实现文本编辑 实现过程: 13.我们选用第一项,然后写出下面的语句。 ui-textEdit-find(findText,QTextDocument:FindBackward); /将行编辑器中的内容在文本编辑器中进行查找 当我们刚打出“f”时,就能自动弹出textEdit类的相 关属性和方法。Qt Creator实现文本编辑 实现过程: 13.可以看到,当写完函数名和第一个“(”后,系 统会自动显示出该函数的函数原型,这样可以使我 们减少出错。Qt Creator实现文本编辑 实现过程: 14

9、.这时已经能实现查找的功能了。但是我们刚才 看到find的返回值类型是bool型,而且,我们也应 该为查找不到字符串作出提示。 if(!ui-textEdit- find(findText,QTextDocument:FindBackward) QMessageBox:warning(this,tr(“查找“),tr(“找不到 %1“) .arg(findText); Qt Creator实现文本编辑 实现过程: 14. (续) 因为查找失败返回值是false,所以if条件加了“!” 号。在找不到时弹出警告对话框。Qt Creator实现文本编辑 实现过程: 15.到这里,查找功能就基本上写完

10、了。 show_findText()函数的内容如下。 Qt Creator实现文本编辑我们会发现随着程序功能的增强,其中的函数也会越来越多,我们都会为查找某个函数的定义位置感到头疼。而在Qt Creator中有几种快速定位函数的方法,我们这里讲解三种。 Qt Creator实现文本编辑实现过程: 第一,在函数声明的地方直接跳转到函数定义的地方。 如在do_file_Load上点击鼠标右键,在弹出的菜单中选 择Follow Symbol under Cursor或者下面的Switch between Method Declaration/Definition。Qt Creator实现文本编辑实现

11、过程: 这时系统就会自动跳转到函数定义的位置。如下图。 Qt Creator实现文本编辑实现过程: 第二,快速查找一个文件里的所有函数。 我们可以点击窗口最上面的下拉框,这里会显示本文件 中所有函数的列表。Qt Creator实现文本编辑第三,利用查找功能。 1.我们先将鼠标定位到一个函数名上。Qt Creator实现文本编辑2.然后选择Edit-Find/Replace-Find Dialog。Qt Creator实现文本编辑3.这时会出现一个查找对话框,可以看到要查找的 函数名已经写在里面了。 Qt Creator实现文本编辑4.当我们按下Search按钮后,会在查找结果窗口显 示查找到的结果。 Qt Creator实现文本编辑5.我们点击第二个文件。会发现在这个文件中有两 处关键字是高亮显示。 Qt Creator实现文本编辑6.我们双击第二项,就会自动跳转到函数的定义处 。 Qt Creator实现文本编辑小结: 讲到这里,我们已经很详细地说明了怎样去使 用一个类里面没有用过的方法函数;也说明了Qt Creator中的一些便捷操作。可以看到,Qt Creator开发环境,有很多很人性化的设计,我们 应该熟练应用它们。在以后的文章中,我们不会再很详细地去用帮 助来说明一个函数是怎么来的,该怎么用,这些应 该自己试着去查找。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 教学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号