Qt最简单程序初步

2019-07-23  本文已影响0人  fishming

Qt 入门程序

#include <iostream>
#include <QtWidgets/QLabel>
#include <QtWidgets/QApplication>
//如果嫌这么写麻烦可以在.pro文件中把CONFIG以下这两行删除
//CONFIG -= app_bundle
//CONFIG -= qt
using namespace std;
int main(int argc,char* argv[])
{
    QApplication app(argc,argv);
    QLabel *label = new QLabel("HELLO Qt!");
    label->show();
    return app.exec();
}

其中
label->show()主要是用来显示QLabel
return app.exec()是用来让程序进入消息循环。等待的可能有彩蛋、工具条、鼠标的输入等等进行相应。
如果将代码

QLabel *label = new QLabel("HELLO Qt!");

替换为

QLabel *label = new QLabel("<h2><i>HELLO</i>""<font color=red>Qt!</font></h2>");

这里包含的html文本能够使显示的字体颜色发生改变。


效果1

比如前者就是斜体,后者变成了红色。

使用信号、槽的程序

程序初步如下,添加了一个

#include <iostream>
#include <QtGui>
#include <QtWidgets>

using namespace std;
int main(int argc,char* argv[])
{
    QApplication app(argc,argv);
    QPushButton *button = new QPushButton("Quit");
    QObject::connect(button,SIGNAL(clicked()),&app,SLOT(quit()));
    QLabel *label = new QLabel("<h2><i>HELLO</i>""<font color=red>Qt!</font></h2>");
    label->show();
    button->show();
    return app.exec();
}

效果2

当有动作或者改变时,Qt的控件会发出消息(signal)。比如这个函数,单击Quit按钮时,按钮会发送clicked()消息,然后这个消息会连接到一个函数上 (这里称为slot,即为槽) 。这时,当程序发出一个消息时,slot函数可以自动执行。在这个例子中,信号为clicked,槽为QApplication::quit()。

更多关于信号和槽的内容下次再见!


参考书籍:嵌入式Qt实战教程

上一篇 下一篇

猜你喜欢

热点阅读