新建GUI应用,项目名“PushButtonTest”, 基类选中“QWidget”,
类名“MyWidget”, 取消“建立界面”。
mywidget.h不用动app
#ifndef MYWIDGET_H #define MYWIDGET_H #include <QWidget> class MyWidget : public QWidget { Q_OBJECT public: MyWidget(QWidget *parent = 0); ~MyWidget(); }; #endif // MYWIDGET_H
mywidget.cpp中为ui
#include "mywidget.h" #include <qapplication.h> #include <qpushbutton.h> #include <qfont.h> MyWidget::MyWidget(QWidget *parent) : QWidget(parent) { setMinimumSize( 200, 120 ); setMaximumSize( 200, 120 ); QPushButton *quit = new QPushButton( "Quit", this); quit->setGeometry( 62, 40, 75, 30 ); quit->setFont( QFont( "Times", 18, QFont::Bold ) ); connect( quit, SIGNAL(clicked()), qApp, SLOT(quit()) ); } MyWidget::~MyWidget() { }
main中为:this
#include "mywidget.h" #include <QApplication> int main(int argc, char *argv[]) { QApplication a(argc, argv); MyWidget w; w.setGeometry(100, 100, 200, 100); //从屏幕上(100, 100)位置开始(即为最左上角的点),显示一个200*100的界面(宽200,高100 w.show(); return a.exec(); }