c++ gui qt4 chap02 find
来源:互联网 发布:淘宝助理怎么下架 编辑:程序博客网 时间:2024/05/16 09:56
<finddialog.h>#ifndef FINDDIALOG_H#define FINDDIALOG_H#include <QDialog>QT_BEGIN_NAMESPACEclass QCheckBox;class QLabel;class QLineEdit;class QPushButton;QT_END_NAMESPACEclass FindDialog : public QDialog{ Q_OBJECTpublic: FindDialog(QWidget *parent = 0);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
<finddialog.cpp>#include <QtWidgets>#include "finddialog.h"FindDialog::FindDialog(QWidget *parent) : QDialog(parent){ label = new QLabel(tr("Find &what:")); lineEdit = new QLineEdit; label->setBuddy(lineEdit); caseCheckBox = new QCheckBox(tr("Match &case")); backwardCheckBox = new QCheckBox(tr("Search &backward")); findButton = new QPushButton(tr("&Find")); findButton->setDefault(true); findButton->setEnabled(false); closeButton = new QPushButton(tr("Close")); connect(lineEdit, SIGNAL(textChanged(const QString &)), this, SLOT(enableFindButton(const QString &))); connect(findButton, SIGNAL(clicked()), this, SLOT(findClicked())); connect(closeButton, SIGNAL(clicked()), this, SLOT(close())); QHBoxLayout *topLeftLayout = new QHBoxLayout; topLeftLayout->addWidget(label); topLeftLayout->addWidget(lineEdit); QVBoxLayout *leftLayout = new QVBoxLayout; leftLayout->addLayout(topLeftLayout); leftLayout->addWidget(caseCheckBox); leftLayout->addWidget(backwardCheckBox); QVBoxLayout *rightLayout = new QVBoxLayout; rightLayout->addWidget(findButton); rightLayout->addWidget(closeButton); rightLayout->addStretch(); QHBoxLayout *mainLayout = new QHBoxLayout; mainLayout->addLayout(leftLayout); mainLayout->addLayout(rightLayout); setLayout(mainLayout); setWindowTitle(tr("Find")); setFixedHeight(sizeHint().height());}void FindDialog::findClicked(){ QString text = lineEdit->text(); Qt::CaseSensitivity cs = caseCheckBox->isChecked() ? Qt::CaseSensitive : Qt::CaseInsensitive; if (backwardCheckBox->isChecked()) { emit findPrevious(text, cs); } else { emit findNext(text, cs); }}void FindDialog::enableFindButton(const QString &text){ findButton->setEnabled(!text.isEmpty());}
<main.cpp>#include <QApplication>#include "finddialog.h"int main(int argc, char *argv[]){ QApplication app(argc, argv); FindDialog *dialog = new FindDialog; dialog->show(); return app.exec();}
0 0
- c++ gui qt4 chap02 find
- c++ gui qt4 chap02 gotocell
- C语言程序设计进阶-Chap02-指针与字符串
- C++GUI Qt4读书笔记(1)--QT的基本知识点
- Qt C++GUI Qt4 编程书中网址
- c++ GUI Qt4 PDF
- C++ GUI QT4编程笔记
- c++ GUI programming with QT4
- C++ GUI Qt4.QT入门
- c++ gui qt4 chap01 age
- 入门QT4+VS2008-Gui设计
- C++ GUI Programming with Qt4 Second Edition 之 附录C Qt Jambi简介
- C++ GUI Programming with Qt4 Second Edition 之 附录C.1 Qt Jambi入门
- C++ gui QT4 OPENGL 开发1
- C++ gui QT4 OPENGL 开发2
- C++ gui QT4 OPENGL 开发3
- C++ gui QT4 OPENGL 开发4
- C++ gui QT4 OPENGL 开发5
- CentOS 7安装mysql
- HDU 1198 Farm Irrigation (并查集)
- 学而不思则罔,学而不思则殆-年终总结
- Java大牛养成记(1)——J2EE13规范
- VS启动调试传递命令行参数
- c++ gui qt4 chap02 find
- iOS 判断相机权限是否被限制,判断相机是否可以使用
- Linux内核分析实验一
- 使用networkx导出关系网络并用gephi进行简单分析
- 自定义 ActionBar ,创建复合控件
- java操作properties文件
- 4.1.3.2 电池充电的监听 Broadcast-Receiver
- input标签 和fmt:formatDate的使用
- MYSQL 函数datediff timestampdiff 的区别