人民幣定價:89 元
定價
:NT$ 534 元優惠價
:87 折 465 元
絕版無法訂購
商品簡介
目次
相關商品
商品簡介
《精通Qt4編程(第2版)》詳細介紹了qt的基礎知識和gui編程應用,舉例翔實,內容全面,基本涵蓋了qt編程的各個方面。全書共分3篇25章,包括qt gui編程的基礎知識(對話框、基礎窗口部件、程序主窗口、布局管理)、中級編程(2d繪圖、拖放操作與剪貼板、文件處理、網絡編程、多線程、事件機制、數據庫及qt風格)和高級應用(xml應用、模型/視圖結構、高級繪圖、進程間通信、qt插件和腳本應用、多媒體、瀏覽器、動畫及狀態機等)。同時,在相關章節也穿插了一些重要的知識點,包括元對象系統、屬性系統、對象樹機制、信號/槽機制等。
《精通Qt4編程(第2版)》體系完整,內容實用,可以作為qt初學者的入門進階書籍,適合具有一定開發經驗的qt程序員作為參考書,也可以作為大中專院校相關專業及培訓機構的教材。
《精通Qt4編程(第2版)》體系完整,內容實用,可以作為qt初學者的入門進階書籍,適合具有一定開發經驗的qt程序員作為參考書,也可以作為大中專院校相關專業及培訓機構的教材。
目次
初級篇
第1章 qt初步實踐 2
1.1 第一個qt程序 2
1.1.1 建立主程序 2
1.1.2 建立工程 3
1.1.3 編譯/運行第一個qt應用程序 8
1.1.4 第一個qt程序的代碼分析 9
1.2 使用qt布局管理器 11
1.3 關聯操作 12
1.4 小結 13
第2章 對話框—— qdialog 14
2.1 自定義對話框 14
2.1.1 建立新類 14
2.1.2 添加子窗口部件 16
2.2 加入主程序 22
2.3 qt內建(built-in)對話框 25
2.4 小結 35
第3章 基礎窗口部件—— qwidget 36
3.1 qt設計器繪制窗口部件 36
3.1.1 qt設計器基礎 36
3.1.2 繪制窗口部件 41
3.2 程序中引入自定義窗口部件 49
3.2.1 直接使用方式 49
3.2.2 單一繼承方式 51
3.2.3 多繼承方式 54
3.3 qt的信號和槽機制 55
3.3.1 基本原理 55
3.3.2 設計信號和槽 58
3.3.3 信號和槽的自動關聯 66
3.4 窗口標志及幾何布局 66
3.4.1 窗口標志 67
3.4.2 窗口部件的幾何布局 69
3.5 qt對象模型 77
3.5.1 元對象系統 78
3.5.2 屬性系統 79
3.5.3 對象樹 82
3.6 隱式共享 85
3.7 小結 86
第4章 程序主窗口——qmainwindow 87
4.1 qmainwindow主窗口框架 87
4.2 qt設計器繪制主窗口 88
4.2.1 菜單 91
4.2.2 工具欄 94
4.2.3 中心部件 97
4.3 代碼創建主窗口 99
4.3.1 創建資源文件 99
4.3.2 定義主窗口類 99
4.4 錨接部件 104
4.5 狀態欄 107
4.6 實現文本編輯器功能 109
4.7 多文檔 120
4.8 打印文檔 122
4.9 小結 123
第5章 布局管理 124
5.1 qt布局管理器——qlayout 124
5.1.1 qt布局管理器簡介 124
5.1.2 布局管理器及窗口部件大小策略的應用 128
5.2 分裂器部件qsplitter 137
5.3 棧部件qstackedwidget 138
5.4 工作空間部件qworkspace 139
5.5 多文檔區部件qmdiarea 153
5.6 小結 155
中級篇
第6章 2d繪圖 158
6.1 arthur繪圖基礎 158
6.1.1 繪圖 158
6.1.2 繪圖設備 182
6.2 坐標系統與坐標變換 183
6.2.1 坐標系統 183
6.2.2 坐標變換 183
6.3 用不同的字體 184
6.4 繪圖路徑——qpainterpath 188
6.5 qimage與qpixmap繪圖設備 190
6.5.1 qimage 190
6.5.2 pixmap 192
6.6 組合模式繪圖 201
6.7 小結 210
第7章 graphics view框架 211
7.1 graphics view概述 211
7.1.1 graphics view體系結構 211
7.1.2 graphics view坐標系統 212
7.1.3 深入graphics view 213
7.2 圖形效果 221
7.3 圖形圖像打印 222
7.3.1 普通打印過程 222
7.3.2 特殊窗口部件的打印 223
7.4 小結 224
第8章 拖放操作和剪貼板 225
8.1 拖放操作 225
8.1.1 拖放操作 225
8.1.2 定義新的拖放操作類型 228
8.1.3 graphics view框架下的拖放操作 228
8.2 使用剪貼板 230
8.3 小結 231
第9章 文件處理 232
9.1 讀寫文本文件 232
9.2 操作二進制文件 234
9.3 臨時文件 236
9.4 目錄操作和文件管理 236
9.4.1 目錄操作 236
9.4.2 文件管理 238
9.5 監視文件系統變化 238
9.6 文件引擎 240
9.7 小結 240
第10章 網絡 241
10.1 ftp客戶端 241
10.2 http客戶端 250
10.3 udp應用 254
10.4 tcp應用 258
10.5 高級應用 269
10.5.1 底層操作 269
10.5.2 使用代理 272
10.5.3 擴展qt網絡功能 272
10.5.4 效率問題 276
10.6 小結 277
第11章 多線程 278
11.1 啟動一個線程 278
11.2 線程互斥與同步 282
11.2.1 臨界區問題 282
11.2.2 使用qmutex 283
11.2.3 使用qsemaphore 284
11.2.4 使用qwaitconditon 286
11.3 線程的其他問題 289
11.3.1 優先級問題 289
11.3.2 死鎖及優先級反轉問題 292
11.3.3 本地存儲問題 294
11.4 qt的線程機制 295
11.4.1 可重入與線程安全 295
11.4.2 線程與事件循環 296
11.4.3 線程與信號/槽機制 297
11.4.4 多線程網絡示例 298
11.5 並行計算 302
11.5.1 利用qtconcurrent啟動線程 302
11.5.2 圖片瀏覽器示例 303
11.6 小結 307
第12章 事件處理 308
12.1 事件機制 308
12.1.1 事件來源與類型 308
12.1.2 事件處理方法 309
12.2 事件處理器 310
12.3 事件過濾器 315
12.4 加快用戶界面響應 318
12.4.1 使用processevents()函數 318
12.4.2 使用定時器 320
12.5 小結 322
第13章 數據庫 323
13.1 連接數據庫 323
13.2 常用數據庫操作 328
13.2.1 使用sql語句 328
13.2.2 事務操作 330
13.2.3 使用sql模型類 331
13.2.4 數據表示 335
13.3 qt數據庫應用 337
13.3.1 使用嵌入式數據庫 337
13.3.2 使用oracle數據庫 340
13.4 小結 352
高級篇
第14章 界面風格 354
14.1 使用qt風格 354
14.2 簡單自定義風格 355
14.2.1 界面設計 355
14.2.2 自定義界面外觀 356
14.2.3 換膚 372
14.3 qt風格原理 376
14.3.1 風格元素 377
14.3.2 風格選項 381
14.3.3 風格函數 383
14.3.4 風格調色板 384
14.3.5 風格繪制過程 386
14.4 高級自定義風格 390
14.5 qt樣式表 407
14.5.1 樣式表語法 407
14.5.2 樣式表的應用 409
14.6 小結 412
第15章 xml 413
15.1 dom 413
15.1.1 dom入門 413
15.1.2 使用dom 414
15.1.3 使用dom寫xml文件 417
15.2 sax 420
15.3 基於流的xml api 425
15.4 qtxmlpatterns模塊 431
15.4.1 xslt 431
15.4.2 xquery 433
15.4.3 xml schema 437
15.5 小結 442
第16章 模型/視圖結構 443
16.1 模型/視圖結構與mvc設計模式 443
16.1.1 模型 444
16.1.2 視圖 444
16.1.3 代理 445
16.2 使用已有的模型視圖類 445
16.2.1 使用已有的模型和視圖類 445
16.2.2 qlistwidget、qtreewidget和qtablewidget 447
16.3 模型(models) 459
16.3.1 模型索引 459
16.3.2 模型角色 460
16.3.3 自定義模型 461
16.3.4 代理模型 464
16.4 視圖(views) 469
16.4.1 自定義視圖 469
16.4.2 數據-窗口部件映射 469
16.5 代理(delegates) 475
16.5.1 使用已有的代理 475
16.5.2 自定義代理 475
16.6 拖放與選中 481
16.6.1 拖放操作 481
16.6.2 選中模式 484
16.7 小結 485
第17章 高級繪圖 486
17.1 3d繪圖——使用opengl 486
17.1.1 創建opengl窗口 486
17.1.2 著色 490
17.1.3 3d和旋轉 491
17.1.4 紋理貼圖 495
17.2 svg 498
17.2.1 繪制svg圖形 498
17.2.2 生成svg文件 500
17.3 小結 501
第18章 進程與進程間通信 502
18.1 使用qprocess 502
18.2 linux進程間通信 505
18.3 共享內存與本地socket 506
18.4 新型進程間通信——d-bus 512
18.4.1 d-bus簡介 513
18.4.2 接口與適配器 514
18.4.3 qtdbus應用實例 517
18.5 小結 527
第19章 qt插件 528
19.1 qt插件開發基礎 528
19.2 qt設計器插件 529
19.2.1 使用scratchpad 529
19.2.2 提升自定義窗口部件 530
19.2.3 qt設計器插件開發 531
19.3 編寫數據庫插件 538
19.4 自定義風格插件 542
19.5 小結 545
第20章 腳本——qtscript 546
20.1 執行ecmascript腳本 546
20.2 qtscript中的信號和槽 547
20.3 使用javascript操作qt對象 550
20.4 基於prototype的繼承 554
20.5 qtscript調試器 555
20.6 小結 556
第21章 國際化 557
21.1 unicode與字符編碼 557
21.1.1 unicode 557
21.1.2 漢字編碼 558
21.1.3 編碼轉換 558
21.2 qt linguist 561
21.2.1 發布管理器 561
21.2.2 翻譯器 563
21.2.3 加載翻譯文件 566
21.3 語言切換 566
21.4 小結 567
第22章 qt單元測試框架 568
22.1 qtestlib框架 568
22.1.1 qtestlib 568
22.1.2 第一個qt單元測試 569
22.2 數據驅動測試 570
22.3 gui測試 572
22.3.1 仿真gui事件 572
22.3.2 重放gui事件 573
22.4 基準測試 574
22.5 小結 575
第23章 動畫與狀態機框架 576
23.1 動畫框架 576
23.2 狀態機框架 578
23.3 實例分析 582
23.4 小結 594
第24章 webkit與多媒體 595
24.1 webkit 595
24.1.1 基於webkit的瀏覽器 595
24.1.2 添加openssl支持 596
24.1.3 qt webkit編程 597
24.2 phonon多媒體框架 597
24.2.1 phonon體系結構 597
24.2.2 phonon媒體播放器 600
24.3 小結 606
第25章 嵌入式qt 607
25.1 windows mobile平臺 607
25.1.1 windows mobile平臺qt應用開發流程 607
25.1.2 部署qt應用程序 611
25.1.3 使用移動電話仿真器 613
25.2 嵌入式linux平臺 614
25.2.1 嵌入式linux平臺qt體系結構 614
25.2.2 開發環境配置 616
25.3 嵌入式qt的裁剪 618
25.4 小結 618
附錄a qt安裝 619
附錄b qt集成開發環境 624
附錄c qmake速查 631
附錄d qt資源 636
第1章 qt初步實踐 2
1.1 第一個qt程序 2
1.1.1 建立主程序 2
1.1.2 建立工程 3
1.1.3 編譯/運行第一個qt應用程序 8
1.1.4 第一個qt程序的代碼分析 9
1.2 使用qt布局管理器 11
1.3 關聯操作 12
1.4 小結 13
第2章 對話框—— qdialog 14
2.1 自定義對話框 14
2.1.1 建立新類 14
2.1.2 添加子窗口部件 16
2.2 加入主程序 22
2.3 qt內建(built-in)對話框 25
2.4 小結 35
第3章 基礎窗口部件—— qwidget 36
3.1 qt設計器繪制窗口部件 36
3.1.1 qt設計器基礎 36
3.1.2 繪制窗口部件 41
3.2 程序中引入自定義窗口部件 49
3.2.1 直接使用方式 49
3.2.2 單一繼承方式 51
3.2.3 多繼承方式 54
3.3 qt的信號和槽機制 55
3.3.1 基本原理 55
3.3.2 設計信號和槽 58
3.3.3 信號和槽的自動關聯 66
3.4 窗口標志及幾何布局 66
3.4.1 窗口標志 67
3.4.2 窗口部件的幾何布局 69
3.5 qt對象模型 77
3.5.1 元對象系統 78
3.5.2 屬性系統 79
3.5.3 對象樹 82
3.6 隱式共享 85
3.7 小結 86
第4章 程序主窗口——qmainwindow 87
4.1 qmainwindow主窗口框架 87
4.2 qt設計器繪制主窗口 88
4.2.1 菜單 91
4.2.2 工具欄 94
4.2.3 中心部件 97
4.3 代碼創建主窗口 99
4.3.1 創建資源文件 99
4.3.2 定義主窗口類 99
4.4 錨接部件 104
4.5 狀態欄 107
4.6 實現文本編輯器功能 109
4.7 多文檔 120
4.8 打印文檔 122
4.9 小結 123
第5章 布局管理 124
5.1 qt布局管理器——qlayout 124
5.1.1 qt布局管理器簡介 124
5.1.2 布局管理器及窗口部件大小策略的應用 128
5.2 分裂器部件qsplitter 137
5.3 棧部件qstackedwidget 138
5.4 工作空間部件qworkspace 139
5.5 多文檔區部件qmdiarea 153
5.6 小結 155
中級篇
第6章 2d繪圖 158
6.1 arthur繪圖基礎 158
6.1.1 繪圖 158
6.1.2 繪圖設備 182
6.2 坐標系統與坐標變換 183
6.2.1 坐標系統 183
6.2.2 坐標變換 183
6.3 用不同的字體 184
6.4 繪圖路徑——qpainterpath 188
6.5 qimage與qpixmap繪圖設備 190
6.5.1 qimage 190
6.5.2 pixmap 192
6.6 組合模式繪圖 201
6.7 小結 210
第7章 graphics view框架 211
7.1 graphics view概述 211
7.1.1 graphics view體系結構 211
7.1.2 graphics view坐標系統 212
7.1.3 深入graphics view 213
7.2 圖形效果 221
7.3 圖形圖像打印 222
7.3.1 普通打印過程 222
7.3.2 特殊窗口部件的打印 223
7.4 小結 224
第8章 拖放操作和剪貼板 225
8.1 拖放操作 225
8.1.1 拖放操作 225
8.1.2 定義新的拖放操作類型 228
8.1.3 graphics view框架下的拖放操作 228
8.2 使用剪貼板 230
8.3 小結 231
第9章 文件處理 232
9.1 讀寫文本文件 232
9.2 操作二進制文件 234
9.3 臨時文件 236
9.4 目錄操作和文件管理 236
9.4.1 目錄操作 236
9.4.2 文件管理 238
9.5 監視文件系統變化 238
9.6 文件引擎 240
9.7 小結 240
第10章 網絡 241
10.1 ftp客戶端 241
10.2 http客戶端 250
10.3 udp應用 254
10.4 tcp應用 258
10.5 高級應用 269
10.5.1 底層操作 269
10.5.2 使用代理 272
10.5.3 擴展qt網絡功能 272
10.5.4 效率問題 276
10.6 小結 277
第11章 多線程 278
11.1 啟動一個線程 278
11.2 線程互斥與同步 282
11.2.1 臨界區問題 282
11.2.2 使用qmutex 283
11.2.3 使用qsemaphore 284
11.2.4 使用qwaitconditon 286
11.3 線程的其他問題 289
11.3.1 優先級問題 289
11.3.2 死鎖及優先級反轉問題 292
11.3.3 本地存儲問題 294
11.4 qt的線程機制 295
11.4.1 可重入與線程安全 295
11.4.2 線程與事件循環 296
11.4.3 線程與信號/槽機制 297
11.4.4 多線程網絡示例 298
11.5 並行計算 302
11.5.1 利用qtconcurrent啟動線程 302
11.5.2 圖片瀏覽器示例 303
11.6 小結 307
第12章 事件處理 308
12.1 事件機制 308
12.1.1 事件來源與類型 308
12.1.2 事件處理方法 309
12.2 事件處理器 310
12.3 事件過濾器 315
12.4 加快用戶界面響應 318
12.4.1 使用processevents()函數 318
12.4.2 使用定時器 320
12.5 小結 322
第13章 數據庫 323
13.1 連接數據庫 323
13.2 常用數據庫操作 328
13.2.1 使用sql語句 328
13.2.2 事務操作 330
13.2.3 使用sql模型類 331
13.2.4 數據表示 335
13.3 qt數據庫應用 337
13.3.1 使用嵌入式數據庫 337
13.3.2 使用oracle數據庫 340
13.4 小結 352
高級篇
第14章 界面風格 354
14.1 使用qt風格 354
14.2 簡單自定義風格 355
14.2.1 界面設計 355
14.2.2 自定義界面外觀 356
14.2.3 換膚 372
14.3 qt風格原理 376
14.3.1 風格元素 377
14.3.2 風格選項 381
14.3.3 風格函數 383
14.3.4 風格調色板 384
14.3.5 風格繪制過程 386
14.4 高級自定義風格 390
14.5 qt樣式表 407
14.5.1 樣式表語法 407
14.5.2 樣式表的應用 409
14.6 小結 412
第15章 xml 413
15.1 dom 413
15.1.1 dom入門 413
15.1.2 使用dom 414
15.1.3 使用dom寫xml文件 417
15.2 sax 420
15.3 基於流的xml api 425
15.4 qtxmlpatterns模塊 431
15.4.1 xslt 431
15.4.2 xquery 433
15.4.3 xml schema 437
15.5 小結 442
第16章 模型/視圖結構 443
16.1 模型/視圖結構與mvc設計模式 443
16.1.1 模型 444
16.1.2 視圖 444
16.1.3 代理 445
16.2 使用已有的模型視圖類 445
16.2.1 使用已有的模型和視圖類 445
16.2.2 qlistwidget、qtreewidget和qtablewidget 447
16.3 模型(models) 459
16.3.1 模型索引 459
16.3.2 模型角色 460
16.3.3 自定義模型 461
16.3.4 代理模型 464
16.4 視圖(views) 469
16.4.1 自定義視圖 469
16.4.2 數據-窗口部件映射 469
16.5 代理(delegates) 475
16.5.1 使用已有的代理 475
16.5.2 自定義代理 475
16.6 拖放與選中 481
16.6.1 拖放操作 481
16.6.2 選中模式 484
16.7 小結 485
第17章 高級繪圖 486
17.1 3d繪圖——使用opengl 486
17.1.1 創建opengl窗口 486
17.1.2 著色 490
17.1.3 3d和旋轉 491
17.1.4 紋理貼圖 495
17.2 svg 498
17.2.1 繪制svg圖形 498
17.2.2 生成svg文件 500
17.3 小結 501
第18章 進程與進程間通信 502
18.1 使用qprocess 502
18.2 linux進程間通信 505
18.3 共享內存與本地socket 506
18.4 新型進程間通信——d-bus 512
18.4.1 d-bus簡介 513
18.4.2 接口與適配器 514
18.4.3 qtdbus應用實例 517
18.5 小結 527
第19章 qt插件 528
19.1 qt插件開發基礎 528
19.2 qt設計器插件 529
19.2.1 使用scratchpad 529
19.2.2 提升自定義窗口部件 530
19.2.3 qt設計器插件開發 531
19.3 編寫數據庫插件 538
19.4 自定義風格插件 542
19.5 小結 545
第20章 腳本——qtscript 546
20.1 執行ecmascript腳本 546
20.2 qtscript中的信號和槽 547
20.3 使用javascript操作qt對象 550
20.4 基於prototype的繼承 554
20.5 qtscript調試器 555
20.6 小結 556
第21章 國際化 557
21.1 unicode與字符編碼 557
21.1.1 unicode 557
21.1.2 漢字編碼 558
21.1.3 編碼轉換 558
21.2 qt linguist 561
21.2.1 發布管理器 561
21.2.2 翻譯器 563
21.2.3 加載翻譯文件 566
21.3 語言切換 566
21.4 小結 567
第22章 qt單元測試框架 568
22.1 qtestlib框架 568
22.1.1 qtestlib 568
22.1.2 第一個qt單元測試 569
22.2 數據驅動測試 570
22.3 gui測試 572
22.3.1 仿真gui事件 572
22.3.2 重放gui事件 573
22.4 基準測試 574
22.5 小結 575
第23章 動畫與狀態機框架 576
23.1 動畫框架 576
23.2 狀態機框架 578
23.3 實例分析 582
23.4 小結 594
第24章 webkit與多媒體 595
24.1 webkit 595
24.1.1 基於webkit的瀏覽器 595
24.1.2 添加openssl支持 596
24.1.3 qt webkit編程 597
24.2 phonon多媒體框架 597
24.2.1 phonon體系結構 597
24.2.2 phonon媒體播放器 600
24.3 小結 606
第25章 嵌入式qt 607
25.1 windows mobile平臺 607
25.1.1 windows mobile平臺qt應用開發流程 607
25.1.2 部署qt應用程序 611
25.1.3 使用移動電話仿真器 613
25.2 嵌入式linux平臺 614
25.2.1 嵌入式linux平臺qt體系結構 614
25.2.2 開發環境配置 616
25.3 嵌入式qt的裁剪 618
25.4 小結 618
附錄a qt安裝 619
附錄b qt集成開發環境 624
附錄c qmake速查 631
附錄d qt資源 636
主題書展
更多
主題書展
更多書展今日66折
您曾經瀏覽過的商品
購物須知
大陸出版品因裝訂品質及貨運條件與台灣出版品落差甚大,除封面破損、內頁脫落等較嚴重的狀態,其餘商品將正常出貨。
特別提醒:部分書籍附贈之內容(如音頻mp3或影片dvd等)已無實體光碟提供,需以QR CODE 連結至當地網站註冊“並通過驗證程序”,方可下載使用。
無現貨庫存之簡體書,將向海外調貨:
海外有庫存之書籍,等候約45個工作天;
海外無庫存之書籍,平均作業時間約60個工作天,然不保證確定可調到貨,尚請見諒。
為了保護您的權益,「三民網路書店」提供會員七日商品鑑賞期(收到商品為起始日)。
若要辦理退貨,請在商品鑑賞期內寄回,且商品必須是全新狀態與完整包裝(商品、附件、發票、隨貨贈品等)否則恕不接受退貨。