子类化QDialog
#define FINDDIALOG_H
//这种包含在QT5中不能使用
#include <QDialog>
class QCheckBox; //前置声明。告诉C++编译程序类的存在,而不用提供类定义中的所有细节
class QLabel; //使用类前置声明而不是包含<QCheck>,<QLabel>头文件,可以加快编译速度
class QLineEdit;
class QPushButton;
class FindDialog : public QDialog
{
Q_OBJECT //对于所用定义了信号和槽的类,在类开始处的Q_OBJECT宏都是必需的
public:
/* parent参数指定了它的父窗口部件。该参数的默认值是一个空指针,意味着该对话框没有父对象 */
FindDialog(QWidget *parent = 0);
/* signals关键字实际上是一个宏。C++预处理器会在编译程序找到它之前把它转换成标准C++代码 */
signals:
void findNext(const QString &str, Qt::CaseSensitivity cs);
void findPrevious(const QString &str, Qt::CaseSensitivity cs);
private slots:
void findClicked();
void enableFindButton(const QString &text);
private:
QLabel *label;
QLineEdit *lineEdit;
QCheckBox *caseCheckBox;
QCheckBox *backwardCheckBox;
QPushButton *findButton;
QPushButton *closeButton;
};
#endif
未完。。。