QPushButton:
1 #ifndef WIDGET_H // widget.h文件 2 #define WIDGET_H 3 4 #include <QWidget> 5 6 class Widget : public QWidget 7 { 8 Q_OBJECT 9 10 public: 11 Widget(QWidget *parent = 0); 12 ~Widget(); 13 14 }; 15 16 #endif // WIDGET_H
1 #include "widget.h" //widget.cpp文件 2 #include <QDebug> 3 #include <QPushButton> 4 #include <qapplication.h> //用到qApp 5 6 Widget::Widget(QWidget *parent): QWidget(parent) 7 { 8 setMinimumSize( 200, 120 ); 9 setMaximumSize( 200, 120 ); 10 11 QPushButton *quit = new QPushButton( "Quit", this); 12 quit->setGeometry( 62, 40, 75, 30 ); 13 quit->setFont( QFont( "Times", 18, QFont::Bold ) ); 14 15 /* 16 qApp是一个qapplication的实例,这里表示的是qapplication对象接受信号 17 #define qApp (static_cast<QApplication *>(QCoreApplication::instance())) 18 处理函数 quit()也是系统函数,关闭窗口: 19 public Q_SLOTS: 20 static void quit(); 21 */ 22 connect( quit, SIGNAL(clicked()), qApp, SLOT(quit())); 23 } 24 25 Widget::~Widget() 26 { 27 28 }
1 #include "widget.h" //main.cpp文件 2 #include <QApplication> 3 #include <QDebug> 4 5 int main(int argc, char *argv[]) 6 { 7 QApplication a(argc, argv); 8 Widget w; 9 w.setGeometry( 100, 100, 200, 120 ); 10 w.show(); 11 return a.exec(); 12 }