基本應用篇
第1章Qt Creator簡介2
1.1 Qt Creator的下載與安裝2
1.1.1下載軟件2
1.1.2安裝軟件3
1.2 Qt Creator環境介紹3
1.2.1運行壹個示例程序6
1.2.2幫助模式8
1.3 Qt工具簡介9
1.3.1 Qt Assistant(Qt助手)9
1.3.2 Qt Designer(Qt設計師)10
1.3.3 Qt Examples and Demos(Qt演示程序與示例)10
1.3.4 Qt Linguist(Qt語言家)10
1.4 小結11
第2章Hello World12
2.1編寫Hello World程序12
2.1.1新建Qt Gui應用12
2.1.2文件說明與界面設計14
2.2程序的運行與發布16
2.2.1程序的運行16
2.2.2程序的發布19
2.2.3設置應用程序圖標20
2.3 helloworld程序源碼與編譯過程詳解22
2.3.1純代碼編寫程序與命令行編譯22
2.3.2使用.ui文件27
2.3.3自定義C++類31
2.3.4使用Qt設計師界面類34
2.4項目模式和項目文件介紹34
2.4.1項目模式34
2.4.2項目文件35
2.4.3關於本書源碼的使用36
2.5小結37
第3章 窗口部件38
3.1基礎窗口部件QWidget39
3.1.1窗口、子部件以及窗口類型39
3.1.2窗口幾何布局42
3.1.3程序調試42
3.2對話框QDialog45
3.2.1模態和非模態對話框46
3.2.2多窗口切換47
3.2.3標準對話框51
3.3其他窗口部件59
3.3.1 QFrame類族59
3.3.2按鈕部件63
3.3.3行編輯器65
3.3.4數值設定框67
3.3.5滑塊部件68
3.4小結69
第4章 布局管理70
4.1布局管理系統70
4.1.1布局管理器71
4.1.2設置部件大小74
4.1.3可擴展窗口77
4.1.4分裂器78
4.2設置夥伴78
4.3設置Tab鍵順序79
4.4小結80
第5章 應用程序主窗口81
5.1主窗口框架81
5.1.1菜單欄和工具欄82
5.1.2中心部件86
5.1.3 Dock部件87
5.1.4狀態欄88
5.1.5自定義菜單89
5.2富文本處理92
5.2.1富文本文檔結構92
5.2.2文本塊93
5.2.3表格、列表與圖片97
5.2.4查找功能99
5.2.5語法高亮與HTML100
5.3拖放操作102
5.3.1使用拖放打開文件102
5.3.2自定義拖放操作103
5.4 打印文檔107
5.5小結109
第6章 事件系統110
6.1 Qt中的事件110
6.1.1事件的處理111
6.1.2事件的傳遞111
6.2鼠標事件和滾輪事件115
6.3鍵盤事件117
6.4定時器事件與隨機數120
6.5事件過濾器與事件的發送123
6.6小結125
第7章 Qt對象模型與容器類126
7.1對象模型126
7.1.1信號和槽127
7.1.2屬性系統132
7.1.3對象樹與擁有權135
7.1.4元對象系統137
7.2容器類138
7.2.1 Qt的容器類簡介138
7.2.2遍歷容器143
7.2.3通用算法150
7.2.4 QString152
7.2.5 QByteArray和QVariant157
7.3正則表達式159
7.3.1正則表達式簡介160
7.3.2正則表達式組成元素162
7.3.3文本捕獲165
7.4小結166
第8章 界面外觀167
8.1 Qt風格167
8.1.1使用不同風格預覽程序168
8.1.2使用不同風格運行程序168
8.1.3調色板169
8.2 Qt樣式表170
8.2.1概述170
8.2.2 Qt樣式表語法172
8.2.3自定義部件外觀與換膚174
8.3特殊效果窗體178
8.3.1不規則窗體178
8.3.2透明窗體179
8.4小結181
第9章 國際化、幫助系統和Qt插件182
9.1國際化182
9.1.1使用Qt Linguist翻譯應用程序183
9.1.2程序翻譯中的相關問題188
9.2幫助系統191
9.2.1簡單的幫助提示191
9.2.2定制Qt Assistant191
9.3創建Qt插件199
9.3.1在設計模式提升窗口部件199
9.3.2創建應用程序插件200
9.3.3創建Qt Designer自定義部件205
9.4小結206
第10章2D繪圖208
10.1基本繪制和填充208
10.1.1基本圖形的繪制和填充208
10.1.2漸變填充213
10.2坐標系統216
10.2.1抗鋸齒渲染216
10.2.2坐標變換219
10.3其他繪制226
10.3.1繪制文字226
10.3.2繪制路徑228
10.3.3繪制圖像230
10.3.4復合模式236
10.4雙緩沖繪圖237
10.5繪圖中的其他問題240
10.5.1重繪事件240
10.5.2剪切241
10.5.3讀取和寫入圖像241
10.5.4播放gif動畫241
10.5.5渲染SVG文件241
10.6小結242
第11章 圖形視圖、動畫和狀態機框架243
11.1圖形視圖框架的結構243
11.1.1場景244
11.1.2視圖245
11.1.3圖形項247
11.2圖形視圖框架的坐標系統和事件處理249
11.2.1坐標系統249
11.2.2事件處理與傳播254
11.3圖形視圖框架的其他特性258
11.3.1圖形效果258
11.3.2動畫、碰撞檢測和圖形項組260
11.3.3打印和使用OpenGL進行渲染263
11.3.4窗口部件、布局和內嵌部件264
11.4動畫框架266
11.4.1實現屬性動畫267
11.4.2使用緩和曲線268
11.4.3動畫組268
11.4.4在圖形視圖框架中使用動畫270
11.5狀態機框架272
11.5.1創建狀態機272
11.5.2在狀態機中使用動畫274
11.5.3狀態機框架的其他特性275
11.6小結282
第12章3D繪圖283
12.1使用OpenGL繪制圖形283
12.2設置顏色286
12.3實現3D圖形286
12.4使用紋理貼圖288
12.5在3D場景中繪制2D圖形290
12.6小結292
影音媒體篇
第13章Qt多媒體應用294
13.1使用QSound播放聲音294
13.2使用QMovie播放動畫296
13.3多媒體的底層控制299
13.4小結303
第14章Phonon多媒體框架304
14.1 Phonon多媒體框架的架構304
14.1.1 Phonon媒體圖中的節點305
14.1.2播放後端306
14.2播放音頻306
14.2.1實現簡單的音頻播放306
14.2.2創建音頻流媒體圖307
14.2.3使用音頻效果307
14.3播放視頻308
14.3.1實現簡單的視頻播放308
14.3.2創建播放視頻的媒體圖309
14.3.3控制視頻播放309
14.4小結315
數據處理篇
第15章 文件、目錄和輸入/輸出317
15.1文件和目錄317
15.1.1輸入/輸出設備317
15.1.2文件操作318
15.1.3目錄操作321
15.2文本流和數據流324
15.2.1使用文本流讀/寫文本文件324
15.2.2使用數據流讀/寫二進制數據325
15.3其他相關類328
15.3.1應用程序設置328
15.3.2統壹資源定位符328
15.3.3 Qt資源329
15.3.4緩沖區329
15.4小結330
第16章 模型/視圖編程331
16.1模型/視圖架構331
16.1.1組成部分332
16.1.2簡單的例子333
16.2模型類334
16.2.1基本概念334
16.2.2創建新的模型338
16.3視圖類344
16.3.1基本概念344
16.3.2處理項目選擇345
16.4委托類350
16.4.1基本概念350
16.4.2自定義委托351
16.5項目視圖的便捷類353
16.5.1 QListWidget354
16.5.2 QTreeWidget355
16.5.3 QTableWidget356
16.5.4***同特性357
16.6在項目視圖中啟用拖放357
16.6.1在便捷類中啟用拖放357
16.6.2在模型/視圖類中啟用拖放359
16.7其他內容362
16.7.1代理模型362
16.7.2數據—窗口映射器363
16.8小結365
第17章 數據庫和XML366
17.1數據庫366
17.1.1連接到數據庫367
17.1.2執行SQL語句372
17.1.3使用SQL模型類376
17.2 XML384
17.2.1 DOM384
17.2.2 SAX394
17.2.3 XML流398
17.3小結402
網絡通信篇
第18章 網絡編程404
18.1 HTTP404
18.2 FTP408
18.3獲取網絡接口信息416
18.4 UDP419
18.5 TCP422
18.6小結436
第19章 進程和線程437
19.1進程437
19.1.1運行壹個進程437
19.1.2進程間通信440
19.2線程444
19.2.1使用QThread啟動線程444
19.2.2同步線程447
19.2.3可重入與線程安全450
19.2.4線程和QObject452
19.3小結454
第20章WebKit455
20.1 QtWebKit模塊455
20.2基於QtWebKit的網頁瀏覽器456
20.2.1顯示壹個網頁456
20.2.2顯示網站圖標459
20.2.3顯示歷史記錄461
20.2.4鏈接跳轉和查找功能463
20.3小結464
參考文獻465