QT写hello world 以及信号槽机制

QT是一个C++的库,不仅仅有GUI的库。首先写一个hello world吧。敲代码,从hello world 写起。

 #include<QtGui/QApplication>
#include<QLabel> int main(int argc , char *argv[])
{
QApplication app (argc , argv);
QLabel *lebal = new QLabel (" hello world!");
lebal->show();
return app.exec();
}

这里插一句啊 QT是可以接受HTML解析的。

QT中,QApplication app ( argc.argv);

....

return app.exec();语句是必备的。

QT的信号槽机制:

先写下代码

 #include<QtGui/QApplication>
#include<QtGui/QPushButton> int main( int agrc , char *agrv[])
{
QApplication a ( agrc, agrv);
QPushButton* button = new QPushButton(“Quit”);
QObject::connect( button ,SIGNAL(clicked()) , &a , SLOT(quit()));
button->show();
return a.exec();
}

信号槽就是将一个clicked信号与槽函数绑定,上述代码就是,把quit这个按钮,在点击之后,发送一个clicked信号,如果这个槽正好对应这个信号,那就执行这个槽函数,也就是quit()函数,也就是回调。

QObject 是所有根的类,它的里面有一个connect静态函数,用来连接信号槽。QT用信号槽来监听事件消息。

上一篇:c++ primer plus 第6版 部分二 5- 8章


下一篇:QT学习之如何在QToolBar中添加带图标的QToolButton并设置图标大小