Qt初識

初識Qt



一、維基百科定義:

Qt (/kjut/ "cute", or unofficially as Q-T cue-tee) is a cross-platform application framework that iswidely used for developing application software with a graphical user interface (GUI) (inwhich cases Qt is classified as awidget toolkit), and also used for developing non-GUI programssuch as command-line tools andconsoles for servers.

 

二、buntu中用命令安裝:

sudo apt-get install qt4-dev-tools #開發包
sudo apt-get install qtcreator #IDE
sudo apt-get install qt4-doc #開發幫助文檔
sudo apt-get install qt4-qtconfig #配置工具
sudo apt-get install qt4-demos#DEMO源碼

 

三、在終端下編寫簡單的Qt程序

 

查看Qt版本命令:

qmake –v
Qmake version2.01a
Using Qtversion 4.8.1 in /usr/lib/i386-linux-gnu


利用vim建立Qt源文件:

mkdir hello
cd hello
vim hello.cpp


在文件中鍵入下面的代碼:

wKioL1Qs_qzSjd-2AAJeKu9XHF0681.jpg

然後我們用qt的工具qmake來生成工程文件hello.pro

qmake -project

生成Makefile文件:

qmake hello.pro

接下來就是make了,等上一段時間.

make

運行程序

./hello

wKioL1Qs_w2Bu3ksAAIN391XeEQ530.jpg


結果:

下面是界面:

wKioL1Qs_5eyC2HSAAAo02qrQ5Y460.jpg


分析:

#include <qapplication.h>
#include <qpushbutton.h>
int main(int argc,char *argv[])
{
    QApplication app(argc,argv);
QpushButton *hello = new QpushButton(“HelloQt! Xpspace!”,0);
 
    hello->resize(100,30);
    hello->show();
    return app.exec();
}

 

註解:

12行,包含兩個類的定義。在每一個使用Qt的應用程序中都必須使用一個QApplication對象,QApplication管理了各種各樣的應用程序的廣泛資源QPushButton是一個經典的圖形用戶界面按鈕,用戶可以按下去,也可以放開。一個QPushButton可以顯示一段文本或者一個QPixmap

3行,爲main函數是程序的入口。main()只需要在把控制轉交給Qt庫之前執行一些初始化,然後Qt庫通過事件來向程序告知用戶的行爲。argc是命令行變量的數量,argv是命令行變量的數組。

4行,爲括號,不解釋。

5行,創建一個QApplication 對象。這個對象用於管理應用程序級別的資源 QApplication 的構造函數要求兩個參數,分別來自main的那兩個參數,因此,Qt 在一定程度上是支持命令行參數的。

6行,一個按鈕被創建了。這個按鈕被設置成顯示“Hello Qt! Xpspace!”並且它自己構成了一個窗口。

7行,這個按鈕被設置成100像素寬,30像素高(加上窗口系統邊框)。

8行,表示當你創建一個窗口部件的時候,它是不可見的。你必須調用show()來使它變爲可見的。 

9行,表示main()把控制轉交給Qt,並且當應用程序退出的時候exec()就會返回。 exec()中,Qt接受並處理用戶和系統的事件並且把它們傳遞給適當的窗口部件。

10行,大括號,程序結束。


註釋:有的程序用到setMainWidget()函數,如果你用的Qt版本是4.0以上的會報錯如下:

error: ‘class QApplication’ has no member named ‘setMainWidget’

錯誤是由於版本問題,setMainWidget是Qt3的,而在Qt4中,這個函數已經不用了,如果想兼容Qt3,可以再程序頭文件前加以下語句(不能在頭文件後):

#define QT3_SUPPORT

之後,帶有setMainWidget的程序可以成功編譯。

 

 



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章