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實戰教程