青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

dodo's blog

  C++博客 :: 首頁 :: 聯系 :: 聚合  :: 管理
  3 Posts :: 0 Stories :: 18 Comments :: 0 Trackbacks

常用鏈接

留言簿(10)

我參與的團隊

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

第一章,Qt概述 (第一部分完)



·第一個Qt程序:Hello Qt
·連接信息槽
·布置器件
·使用開發文檔

第一個Qt程序:Hello Qt

讓我們從一個非常簡單的Qt程序開始。我們將會把它一行一行地拆解,最后我們將會學到如何編譯和運行它。

1#include <QApplication>
2#include <QLabel>
3int main(int argc, char *argv[])
4{
5    QApplication app(argc, argv);
6    QLabel *label = new QLabel("Hello Qt!");
7    label->show();
8    return app.exec();
9}


第1行和第2行包含了QApplication和QLabel類的定義。每一個Qt類的定義都由一個與其類名相同的頭文件包含。

第5行創建了一個QApplication對象以管理應用程序資源。因為Qt支持命令行,QApplication的構造函數需要argc和argv參數。

第6行創建了一個顯示"Hello Qt!"的QLabel器件(widget)。在Qt和Unix術語當中,器件指的是用戶界面上的可視元素,這在Windows下被成為控件(control)和容器(container)。按鈕、菜單、滾動條和框架都是器件之一。一個器件還可以包含其他器件,比如一個應用程序的窗口器件通常包含了QMenuBar,QToolBars,QStatusBar等器件。大多數應用程序使用QMainWindow或QDialog作為窗口器件,但是在Qt中任何器件都能作為一個窗口,在本例中,應用程序窗口是一個QLabel。

第7行使創建的Label顯示出來。我們一般要對器件進行設置后才會顯示他們,所以為了避免閃爍,器件在剛創建時總是隱藏的。

第8行使Qt應用程序開始運轉。從這個函數調用開始,程序會進入所謂的事件循環(event loop)。程序將會靜待用戶的操作,比如鼠標單擊和鍵盤按鍵。程序通過執行一個或多個函數來響應用戶操作產生的事件(也被稱作“消息”)。比如用戶在單擊一個器件后將會產生一個鼠標按和下一個鼠標彈起的事件。從這點上看,GUI程序與通常接收數據、輸出數據然后不需要人們干涉就終止的批處理程序完全不同。

為了簡便,我們并沒有在main()函數的最后delete掉QLabel對象。這樣的內存泄露無傷大雅,并且泄露的內存最后將在程序終止時被操作系統回收。(譯者注:我看的Qt例程里面貌似都沒刪……)

現在我們來看看如何在自己的機子上編寫一個Qt程序。首先,你需要安裝Qt 4.1.1(或更新的Qt4版本),具體的安裝細節見附錄A(本文略)。

附:Qt4.4.0 下載地址:http://www.qtcn.org/bbs/read.php?tid=1075
            安裝方式:http://www.qtcn.org/bbs/read.php?tid=4853

我們將源代碼保存為hello.cpp

在命令行下輸入

qmake -project

以上創建了平臺相關的工程文件。然后輸入

qmake hello.pro

以上創建了給指定平臺使用的makefile。

最后輸入make即可編譯和鏈接程序了。要運行程序,在Windows下輸入hello,在Unix下為./hello,在Mac OS X下為open hello.app。要關閉該程序則單擊窗口標題欄上的關閉按鈕。


圖1.1,Hello on Qt


[*]如果出現包含<QApplication>的錯誤,說明你使用的Qt是較老的版本,確認你的Qt版本在4.0之后。

如果你在使用Windows并且已經安裝了Qt開源版和MinGW編譯器,你會有一個已經為Qt配置好環境變量的命令行快捷方式。如果使用此命令行,你可以通過上面所說的qmake和make命令正確編譯一個Qt程序。生成的可執行文件將會保存在工程所在目錄的debug和release目錄下,比如C:\qt-book\hello\release\hello.exe。

如果你在使用Visual C++,你要執行nmake而不是make。或者你可以通過以下的命令來創建一個Visual Studio工程文件:

qmake -tp vc hello.pro

然后在Visual Studio中編譯工程。

如果你在使用Mac OS上的XCode,你可以通過以下命令生成一個XCode的工程:

qmake -spec macx-xcode

最后,讓我們在進入下一個例子之前輕松一下,將:

QLabel *label = new QLabel("Hello Qt!");
換成:
QLabel *label = new QLabel("<h2><i>Hello</i> "
"<font color=red>Qt!</font></h2>");
然后重新編譯程序。
圖2.2,一個有著HTML風格的Label










該例子說明,很容易用一些HTML風格的元素增強Qt的界面。
 
posted on 2008-05-14 14:56 多多 閱讀(1794) 評論(2)  編輯 收藏 引用 所屬分類: C++ GUI Programming with Qt4

Feedback

# re: C++ GUI Programming with Qt 4: 第一章,Qt概述,第一個Qt程序:Hello Qt 2008-05-21 20:15 Sam
Good  回復  更多評論
  

# re: C++ GUI Programming with Qt 4: 第一章,Qt概述,第一個Qt程序:Hello Qt 2009-05-10 21:35 odod
學了~~~  回復  更多評論
  

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美大尺度在线| 亚洲一区二区三区视频播放| 久久精品国产综合精品| 亚洲综合成人婷婷小说| 国产日韩精品综合网站| 麻豆国产精品一区二区三区| 久久在线视频在线| 一道本一区二区| 亚洲在线视频| 136国产福利精品导航网址| 欧美国产在线电影| 欧美日韩免费高清一区色橹橹| 亚洲欧美日韩电影| 久久亚洲不卡| 亚洲午夜高清视频| 欧美在线观看一区二区三区| 亚洲人成人77777线观看| 99伊人成综合| 韩曰欧美视频免费观看| 欧美黑人在线播放| 国产精品福利av| 久久综合伊人77777尤物| 欧美成人a视频| 欧美影院在线| 欧美大片一区| 久久精品五月婷婷| 欧美日韩国产高清| 久久综合久久综合这里只有精品| 欧美日本不卡| 噜噜噜噜噜久久久久久91| 欧美日韩小视频| 免费视频一区| 日韩视频免费观看高清在线视频| 久久久久.com| 欧美日韩中文字幕| 精品动漫3d一区二区三区| 亚洲第一偷拍| 国产亚洲精品美女| 亚洲精品久久视频| 亚洲高清不卡av| 欧美在线视屏| 欧美一区亚洲二区| 欧美三级欧美一级| 亚洲国内自拍| 亚洲国产第一| 久久久www成人免费无遮挡大片| 亚洲视频网在线直播| 欧美成人午夜免费视在线看片| 久久久久综合网| 一区二区三区日韩精品视频| 欧美精品在欧美一区二区少妇| 久久久久久一区二区| 亚洲精品免费一二三区| 久久爱91午夜羞羞| 亚洲午夜激情| 日韩亚洲不卡在线| 免费一级欧美片在线观看| 久久精品中文| 国产精品亚洲片夜色在线| 一区二区三区国产盗摄| 亚洲精品日韩在线观看| 免费观看久久久4p| 欧美成人免费在线视频| 在线观看亚洲视频| 久久精品成人欧美大片古装| 久久精品日产第一区二区| 国产欧美日韩视频在线观看| 亚洲欧美日韩天堂| 欧美一区二区三区四区高清| 国产精品麻豆va在线播放| 亚洲一区二区精品| 香蕉久久国产| 国产一区二区三区的电影| 亚洲精品久久久久久久久久久久久 | 国产精品欧美久久| 日韩午夜av| 亚洲一二区在线| 国产精品久久久久久久免费软件| 亚洲国产精品久久91精品| 亚洲美女电影在线| 欧美精品麻豆| 中文av字幕一区| 久久久久成人精品免费播放动漫| 一区二区在线不卡| 米奇777超碰欧美日韩亚洲| 亚洲国产婷婷| 亚洲综合激情| 影音先锋在线一区| 亚洲国产精品一区二区第一页| 亚洲国产欧美一区二区三区久久| 性欧美在线看片a免费观看| 久久嫩草精品久久久精品| 在线观看成人网| 欧美第一黄网免费网站| 一二三四社区欧美黄| 一区二区久久久久| 欧美激情网站在线观看| 亚洲视频一二| 蜜乳av另类精品一区二区| 一区二区三区高清不卡| 国产欧美日韩激情| 欧美aⅴ一区二区三区视频| 中文国产成人精品久久一| 欧美sm极限捆绑bd| 亚洲在线成人精品| 最新国产拍偷乱拍精品 | 欧美福利专区| 国产精品久久久久av免费| 亚洲电影av在线| 亚洲尤物视频网| 亚洲国产精品精华液网站| 国产精品毛片在线| 欧美激情精品久久久久久免费印度| 亚洲天堂av在线免费观看| 欧美成人黄色小视频| 久久国产精品久久久| 亚洲深夜福利网站| 亚洲第一精品影视| 国产区亚洲区欧美区| 欧美日韩精品一区二区| 久久久久综合| 先锋影音久久| 日韩一区二区电影网| 亚洲成人在线网| 久久一区二区三区四区| 欧美在线播放| 午夜一区在线| 亚洲欧美三级伦理| 亚洲视频碰碰| 亚洲视频一区二区| 日韩视频中午一区| 91久久在线| 亚洲国产精品va| 亚洲国产岛国毛片在线| 亚洲第一页中文字幕| 一区二区在线视频观看| 狠狠色香婷婷久久亚洲精品| 国产欧美大片| 国产精品亚洲片夜色在线| 国产精品伦理| 国产精品网曝门| 国产日韩av高清| 国产欧美韩国高清| 国产日产亚洲精品系列| 国产一本一道久久香蕉| 国产一区二区三区在线观看网站| 国产欧美日韩综合精品二区| 国产欧美日韩综合一区在线观看| 国产精品丝袜xxxxxxx| 国产偷自视频区视频一区二区| 国产日韩欧美综合| 国产亚洲成av人片在线观看桃 | 欧美成人官网二区| 欧美激情综合亚洲一二区 | 午夜精品久久一牛影视| 午夜精品久久久久久久99水蜜桃| 欧美一区二区三区免费观看| 久久久精品国产免大香伊| 欧美aⅴ一区二区三区视频| 欧美日本在线| 国产精品视频免费观看www| 国产婷婷精品| 亚洲精品欧美日韩| 亚洲自拍16p| 久久裸体艺术| 亚洲激情视频网| 亚洲无亚洲人成网站77777 | 99在线精品免费视频九九视| 亚洲午夜国产一区99re久久 | 亚洲午夜激情网页| 久久精品视频va| 欧美精品www| 国产欧美亚洲精品| 91久久国产精品91久久性色| 亚洲一区二区三区在线观看视频| 久久精品欧美日韩| 亚洲黑丝在线| 午夜免费久久久久| 欧美福利视频在线| 国产欧美视频一区二区| 亚洲精品少妇30p| 欧美一区二区播放| 99精品99| 一本色道久久综合亚洲精品按摩| 亚洲男女毛片无遮挡| 免费中文字幕日韩欧美| 亚洲视频在线看| 欧美黄色免费网站| 国产亚洲激情| 亚洲午夜视频在线观看| 欧美成人三级在线| 亚洲欧美清纯在线制服| 欧美福利电影网| 国语精品中文字幕| 亚洲欧美日韩国产中文在线| 亚洲精品乱码久久久久久日本蜜臀 | 在线观看的日韩av| 亚洲午夜一区二区| 欧美二区乱c少妇| 欧美在线视频免费|