先看findClicked()函数。首先取出lineEdit的输入值;然后判断caseCheckBox是不是选中,如果选中 就返回 Qt::CaseInsensitive,否则返回Qt::CaseSensitive,用于判断是不是大小写敏感的查找;最后,如果 backwardCheckBox 被选中,就 emit(发出)信号findPrevious(),否则emit信号findNext。enableFindButton()则根据lineEdit的...
1 #include <QtGui> 1 #include "finddialog.h" 1 /*在类的外面定义派生类狗在函数*/ 1 2 3 4 5 FindDialog::FindDialog(QWidget *parent): QDialog(parent) { label = new QLabel(tr("Find &what:")); lineEdit = new QLineEdit; label ->setBuddy(lineEdit); 1 /*创建了两个 QCheckBox,把...
好了,首先新建一个工程,就叫 FindDialog吧!嗯,当然还是Qt Gui Application,然后最后一步注意,Base Dialog选择QDialog,而不是默认的QMainWindow,因为我们要学习建立对话框嘛!名字随便起,不过我就叫finddialog 啦!Ganarate form还是不要的。然后Finish就好了。打开finddialog.h,开始编写头文件。#ifndef FINDDIAL...
对于QT学习之路:Qt学习之路(7):创建一个对话框(上)这个程序。编译出现 invalid use of incomplete type ‘classQPushButton’ findButton->setEnabled(!text.isEmpty());^In file includedfrom/usr/include/qt5/QtWidgets/QDialog:1:0,fromfinddialog.h:4,fromfinddialog.cpp:3:/usr/include/qt5/QtWidgets/...
最后的setWindowTitle()就是设置对话框的标题,而setFixedHeight()是设置成固定的高度,其参数值sizeHint()返回“最理想”的大小,这里我们使用的是height()函数去到“最理想”的高度。 好了,下面该编写槽了——虽然说是slot,但实际上它就是普通的函数,既可以和其他函数一样使用,又可以被系统回调。
然后新建一个QLabel。还记得前面的Hello, world!里面也使用过QLabel吗?那时候只是简单的传入一个字符串啊!这里怎么是一个函数tr()?函数tr()全名是QObject::tr(),被它处理的字符串可以使用工具提取出来翻译成其他语言,也就是做国际化使用。这以后还会仔细讲解,只要记住,Qt的最佳实践:如果你想让你的程序国际化的...
好了,首先新建一个工程,就叫FindDialog吧!嗯,当然还是Qt Gui Application,然后最后一步注意,Base Dialog选择QDialog,而不是默认的QMainWindow,因为我们要学习建立对话框嘛!名字随便起,不过我就叫finddialog啦!Ganarate form还是不要的。然后Finish就好了。
好了,首先新建一个工程,就叫 FindDialog 吧!嗯,当然还是 Qt Gui Application,然后最后一步注意,Base Dialog 选择 QDialog,而不是默认的 QMainWindow,因为我们要学习建立对话框嘛!名字随便起,不过我就叫 finddialog 啦!Ganarate form 还是不要的。然后 Finish 就好了。
最后的setWindowTitle()就是设置对话框的标题,而setFixedHeight()是设置成固定的高度,其参数值sizeHint()返回“最理想”的大小,这里我们使用的是height()函数去到“最理想”的高度。 好了,下面该编写槽了——虽然说是slot,但实际上它就是普通的函数,既可以和其他函数一样使用,又可以被系统回调。
好了,首先新建一个工程,就叫 FindDialog 吧!嗯,当然还是 Qt Gui Application,然后最后一步注意,Base Dialog 选择 QDialog,而不是默认的 QMainWindow,因为我们要学习建立对话框嘛!名字随便起,不过我就叫 finddialog 啦!Ganarate form 还是不要的。然后 Finish 就好了。