资源描述
专业:嵌入式专业,Qt,QtCreator实现文本编辑,实现功能:在程序主窗口Mainwindow中,有菜单栏,工具栏,中心部件和状态栏。前面几个已经讲过了,这次讲解状态栏的使用。,QtCreator实现文本编辑,实现过程:1.我们在mainwindow.h中做一下更改。加入头文件包含:#include加入私有变量和函数:QLabel*first_statusLabel;/声明两个标签对象,用于显示状态信息QLabel*second_statusLabel;voidinit_statusBar();/初始化状态栏加入一个槽函数声明:voiddo_cursorChanged();/获取光标位置信息,QtCreator实现文本编辑,实现过程:2.在mainwindow.cpp中加入状态栏初始化函数的定义。voidMainWindow:init_statusBar()QStatusBar*bar=ui-statusBar;/获取状态栏first_statusLabel=newQLabel;/新建标签first_statusLabel-setMinimumSize(150,20);/设置标签最小尺寸,QtCreator实现文本编辑,实现过程:2.在mainwindow.cpp中加入状态栏初始化函数的定义。(续)first_statusLabel-setFrameShape(QFrame:WinPanel);/设置标签形状first_statusLabel-setFrameShadow(QFrame:Sunken);/设置标签阴影,QtCreator实现文本编辑,实现过程:2.在mainwindow.cpp中加入状态栏初始化函数的定义。(续)second_statusLabel=newQLabel;second_statusLabel-setMinimumSize(150,20);second_statusLabel-setFrameShape(QFrame:WinPanel);second_statusLabel-setFrameShadow(QFrame:Sunken);,QtCreator实现文本编辑,实现过程:2.在mainwindow.cpp中加入状态栏初始化函数的定义。(续)bar-addWidget(first_statusLabel);bar-addWidget(second_statusLabel);first_statusLabel-setText(tr(欢迎使用文本编辑器);/初始化内容second_statusLabel-setText(tr(yafeilinux制作!);这里将两个标签对象加入到了主窗口的状态栏里,并设置了他们的外观和初值。,QtCreator实现文本编辑,实现过程:3.在构造函数里调用状态栏初始化函数。init_statusBar();这时运行程序,效果如下。,QtCreator实现文本编辑,实现过程:4.在mainwindow.cpp中加入获取光标位置的函数的定义。voidMainWindow:do_cursorChanged()introwNum=ui-textEdit-document()-blockCount();/获取光标所在行的行号constQTextCursorcursor=ui-textEdit-textCursor();intcolNum=cursor.columnNumber();/获取光标所在列的列号,QtCreator实现文本编辑,实现过程:4.在mainwindow.cpp中加入获取光标位置的函数的定义。(续)first_statusLabel-setText(tr(%1行%2列).arg(rowNum).arg(colNum);/在状态栏显示光标位置这个函数可获取文本编辑框中光标的位置,并显示在状态栏中。,QtCreator实现文本编辑,实现过程:5.在构造函数添加光标位置改变信号的关联。connect(ui-textEdit,SIGNAL(cursorPositionChanged(),this,SLOT(do_cursorChanged();这时运行程序。效果如下。,QtCreator实现文本编辑,实现过程:效果如下。,QtCreator实现文本编辑,实现过程:6.在do_file_Load函数的最后添加下面语句。second_statusLabel-setText(tr(打开文件成功);,QtCreator实现文本编辑,实现过程:7.在saveFile函数的最后添加以下语句。second_statusLabel-setText(tr(保存文件成功);,QtCreator实现文本编辑,实现过程:8.在on_action_Find_triggered函数的后面添加如下语句。second_statusLabel-setText(tr(正在进行查找);,QtCreator实现文本编辑,实现过程:9.在on_action_Close_triggered函数最后添加如下语句。first_statusLabel-setText(tr(文本编辑器已关闭);second_statusLabel-setText(tr(yafeilinux制作!);,QtCreator实现文本编辑,实现过程:最终的mainwindow.cpp文件如下。,QtCreator实现文本编辑,实现过程:最终的mainwindow.cpp文件如下。(续),QtCreator实现文本编辑,实现过程:最终的mainwindow.cpp文件如下。(续),QtCreator实现文本编辑,实现过程:最终的mainwindow.cpp文件如下。(续),QtCreator实现文本编辑,实现过程:最终的mainwindow.cpp文件如下。(续),QtCreator实现文本编辑,实现过程:最终的mainwindow.cpp文件如下。(续),QtCreator实现文本编辑,实现过程:最终的mainwindow.h文件如下。,QtCreator实现文本编辑,实现过程:最终的mainwindow.h文件如下。(续),QtCreator实现文本编辑,实现过程:到这里整个文本编辑器的程序就算写完了。我们这里没有写帮助菜单的功能实现,大家可以自己添加。而且程序中也有不完善的地方,如果有兴趣,大家也可以自己修改。,
展开阅读全文