开始Widget的学习。
#include
#include
#include
#include
class MyWidget : public QWidget
{
public:
MyWidget(QWidget *parent=0);
};
MyWidget::MyWidget(QWidget *parent) : QWidget(parent)
{
setFixedSize(200,135);
QPushButton *quit = new QPushButton( tr("Clicked Quit!"),this);
quit->setGeometry(62,40,100,30);
quit->setFont( QFont("Times",12,QFont::Bold) );
QPushButton *quit1 = new QPushButton( tr("Pressed Quit!"),this);
quit1->setGeometry(62,80,100,30);
quit1->setFont( QFont("Times",12,QFont::Bold) );
connect(quit1,SIGNAL(pressed()),qApp,SLOT(quit()));
connect(quit,SIGNAL(clicked()),qApp,SLOT(quit()));
}
int main(int argc,char **argv)
{
QApplication app(argc,argv);
MyWidget widget;
widget.show();
// MyWidget widget1;
// widget1.show();
return app.exec();
}
一个widget上面生成两个button,一个是clicked()触发quit(),另一个是pressed()触发quit()。
如果是在主程序里面有两个widget,那么将会生成两个窗口,并且一个button按下后,那么两个窗口都将会退出,唯一的一个QApplication对象退出了。
注意class声明时候,后面的;(分号)不要忘记
qApp是一个全局变量,在qapplication.h中定义,它指向唯一的一个QApplication对象(一个程序中只能够有一个QApplication对象)。
阅读(3033) | 评论(2) | 转发(0) |