Qt是當(dāng)前非常流行的C++可視化開發(fā)軟件。本書全面升級(jí)到最新的Qt 6.0平臺(tái),通過(guò)豐富的實(shí)例介紹Qt和QML編程及其應(yīng)用開發(fā)。全書分為7個(gè)部分。第1部分為Qt基礎(chǔ),在上一版的基礎(chǔ)上基于Qt 6.0的全新類模塊和接口,重新實(shí)現(xiàn)了所有基礎(chǔ)實(shí)例的功能。第2部分為Qt 6綜合實(shí)例,設(shè)計(jì)了電子商城系統(tǒng)、簡(jiǎn)單字處理軟件、微信客戶端程序這三大實(shí)用案例。第3部分為Qt擴(kuò)展應(yīng)用OpenCV,介紹OpenCV的配置及典型圖片處理實(shí)例。第4部分為QML和Qt Quick及其應(yīng)用,基于Qt 6.0支持的Qt Quick Controls 2.5新庫(kù)實(shí)現(xiàn)了諸多典型應(yīng)用實(shí)例。第5部分是Qt Quick 3D開發(fā)基礎(chǔ),先從基礎(chǔ)的場(chǎng)景、相機(jī)、視圖、光源等概念入手,通過(guò)程序?qū)嵗榻BQt 6 3D開發(fā)的基礎(chǔ)知識(shí),然后通過(guò)一個(gè)綜合的“益智積木”學(xué)習(xí)軟件來(lái)演示Qt 6在3D開發(fā)上的強(qiáng)大功能。第6部分是Qt 6跨平臺(tái)開發(fā)技術(shù),介紹了Qt 6在Visual Studio、Android、Python及Linux(Ubuntu)等多種主流平臺(tái)上的環(huán)境配置和程序開發(fā)。第7部分為附錄,介紹了C++相關(guān)知識(shí)和Qt 6的簡(jiǎn)單調(diào)試。本書提供配套的視頻,分析典型案例,通過(guò)掃描二維碼播放。為了方便讀者上機(jī)練習(xí),書中實(shí)例提供源代碼,其編號(hào)為CH×××。源代碼工程文件可從華信教育資源網(wǎng)(http://www.hxedu.com.cn)免費(fèi)下載。本書既可作為Qt學(xué)習(xí)不可多得的一本全面翔實(shí)的學(xué)習(xí)資料和參考用書,也可作為Qt開發(fā)技術(shù)培訓(xùn)用書。
鄭阿奇,曾任教于南京師范大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,主編多本計(jì)算機(jī)專業(yè)教材,多次獲選為國(guó)家規(guī)劃教材,兩次獲江蘇省優(yōu)秀教學(xué)成果二等獎(jiǎng)、江蘇省暢銷圖書編輯二等獎(jiǎng)、全國(guó)高校出版社優(yōu)秀暢銷書二等獎(jiǎng)、兩次獲南京師范大學(xué)優(yōu)秀教學(xué)成果一等獎(jiǎng)、南京師范大學(xué)精品教材一等獎(jiǎng)。
目 錄
第1部分 Qt 6基礎(chǔ)
第1章 Qt 6概述 1
1.1 什么是Qt 1
1.2 Qt 6的安裝 2
1.2.1 下載Qt在線安裝器和申請(qǐng)免費(fèi)賬號(hào) 2
1.2.2 安裝Qt 6.x 5
1.2.3 運(yùn)行Qt Creator 7
1.2.4 Qt 6開發(fā)環(huán)境簡(jiǎn)介 8
1.3 Qt 6開發(fā)實(shí)例介紹 10
1.3.1 設(shè)計(jì)器(Qt Designer)開發(fā)實(shí)例 10
1.3.2 代碼實(shí)現(xiàn)開發(fā)實(shí)例 19
第2章 Qt 6模板庫(kù)、工具類及控件 23
2.1 字符串類 23
2.1.1 操作字符串 23
2.1.2 查詢字符串?dāng)?shù)據(jù) 24
2.1.3 字符串的轉(zhuǎn)換 25
2.1.4 字符串優(yōu)化 26
2.2 容器類 28
2.2.1 QList、QLinkedList和QVector類 28
2.2.2 QMap類和QHash類 34
2.3 QVariant類 37
2.4 算法及正則表達(dá)式 39
2.4.1 Qt 6常用算法 39
2.4.2 基本的正則表達(dá)式 40
2.5 控件 41
2.5.1 按鈕組(Buttons) 41
2.5.2 輸入部件組(Input Widgets) 43
2.5.3 顯示控件組(Display Widgets) 44
2.5.4 空間間隔組(Spacers) 45
2.5.5 布局管理組(Layouts) 45
2.5.6 容器組(Containers) 45
2.5.7 項(xiàng)目視圖組(Item Views) 49
2.5.8 項(xiàng)目控件組(Item Widgets) 51
2.5.9 多控件實(shí)例 55
第3章 Qt 6布局管理 58
3.1 分割窗口類:QSplitter 58
3.2 ?看翱陬悾篞DockWidget 60
3.3 堆棧窗體類:QStackedWidget 62
3.4 基本布局類:QLayout 64
3.5 【綜合實(shí)例】:修改用戶資料表單 69
3.5.1 導(dǎo)航頁(yè)實(shí)現(xiàn) 71
3.5.2 “基本信息”頁(yè)設(shè)計(jì) 72
3.5.3 “聯(lián)系方式”頁(yè)設(shè)計(jì) 75
3.5.4 “詳細(xì)資料”頁(yè)設(shè)計(jì) 76
3.5.5 編寫主函數(shù) 78
第4章 Qt 6基本對(duì)話框 80
4.1 標(biāo)準(zhǔn)文件對(duì)話框類 83
4.1.1 函數(shù)說(shuō)明 83
4.1.2 創(chuàng)建步驟 84
4.2 標(biāo)準(zhǔn)顏色對(duì)話框類 85
4.2.1 函數(shù)說(shuō)明 85
4.2.2 創(chuàng)建步驟 85
4.3 標(biāo)準(zhǔn)字體對(duì)話框類 86
4.3.1 函數(shù)說(shuō)明 86
4.3.2 創(chuàng)建步驟 86
4.4 標(biāo)準(zhǔn)輸入對(duì)話框類 87
4.4.1 標(biāo)準(zhǔn)字符串輸入對(duì)話框 90
4.4.2 標(biāo)準(zhǔn)條目選擇對(duì)話框 91
4.4.3 標(biāo)準(zhǔn)int類型輸入對(duì)話框 91
4.4.4 標(biāo)準(zhǔn)double類型輸入對(duì)話框 92
4.5 消息對(duì)話框類 93
4.5.1 Question消息框 96
4.5.2 Information消息框 97
4.5.3 Warning消息框 97
4.5.4 Critical消息框 98
4.5.5 About消息框 98
4.5.6 About Qt消息框 99
4.6 自定義消息框 99
4.7 工具盒類 100
4.8 進(jìn)度條 105
4.9 調(diào)色板與電子鐘 108
4.9.1 QPalette類 108
4.9.2 QTime類 114
4.9.3 【綜合實(shí)例】:電子時(shí)鐘 114
4.10 可擴(kuò)展對(duì)話框 117
4.11 不規(guī)則窗體 120
4.12 程序啟動(dòng)畫面類:QSplashScreen 123
第5章 Qt 6主窗口 125
5.1 Qt 6主窗口構(gòu)成 125
5.1.1 基本元素 125
5.1.2 【綜合實(shí)例】:文本編輯器 126
5.1.3 菜單與工具欄的實(shí)現(xiàn) 129
5.2 Qt 6文件操作功能 134
5.2.1 新建文件 134
5.2.2 打開文件 134
5.2.3 打印文件 137
5.3 Qt 6圖像坐標(biāo)變換 139
5.3.1 縮放功能 139
5.3.2 旋轉(zhuǎn)功能 140
5.3.3 鏡像功能 142
5.4 Qt 6文本編輯功能 143
5.4.1 設(shè)置字體 146
5.4.2 設(shè)置字號(hào) 146
5.4.3 設(shè)置文字加粗 146
5.4.4 設(shè)置文字斜體 147
5.4.5 設(shè)置文字加下畫線 147
5.4.6 設(shè)置文字顏色 147
5.4.7 設(shè)置字符格式 148
5.5 Qt 6排版功能 148
5.5.1 實(shí)現(xiàn)段落對(duì)齊 150
5.5.2 實(shí)現(xiàn)文本排序 150
第6章 Qt 6圖形與圖片 154
6.1 Qt 6位置函數(shù) 154
6.1.1 各種位置函數(shù)及區(qū)別 154
6.1.2 位置函數(shù)的應(yīng)用 155
6.2 Qt 6基礎(chǔ)圖形的繪制 158
6.2.1 繪圖框架設(shè)計(jì) 158
6.2.2 繪圖區(qū)的實(shí)現(xiàn) 159
6.2.3 主窗口的實(shí)現(xiàn) 163
6.3 Qt 6雙緩沖機(jī)制 175
6.3.1 原理與設(shè)計(jì) 175
6.3.2 繪圖區(qū)的實(shí)現(xiàn) 176
6.3.3 主窗口的實(shí)現(xiàn) 180
6.4 顯示Qt 6 SVG格式圖片 182
第7章 Qt 6圖形視圖框架 189
7.1 圖形視圖體系結(jié)構(gòu)(Graphics View) 189
7.1.1 Graphics View框架結(jié)構(gòu)的主要特點(diǎn) 189
7.1.2 Graphics View框架結(jié)構(gòu)的三元素 189
7.1.3 GraphicsView框架結(jié)構(gòu)的坐標(biāo)系統(tǒng) 191
7.2 圖形視圖實(shí)例 192
7.2.1 飛舞的蝴蝶實(shí)例 192
7.2.2 地圖瀏覽器實(shí)例 196
7.2.3 圖元?jiǎng)?chuàng)建實(shí)例 200
7.2.4 圖元的旋轉(zhuǎn)、縮放、切變和位移實(shí)例 209
第8章 Qt 6模型/視圖結(jié)構(gòu) 216
8.1 概述 216
8.1.1 基本概念 216
8.1.2 模型類/視圖類 217
8.2 模型(Model) 219
8.3 視圖(View) 222
8.4 代理(Delegate) 234
第9章 Qt 6文件及磁盤處理 242
9.1 讀寫文本文件 242
9.1.1 使用QFile類讀寫文本文件 242
9.1.2 使用QTextStream類讀寫文本文件 243
9.2 讀寫二進(jìn)制文件 245
9.3 目錄操作與文件系統(tǒng) 247
9.3.1 文件大小及路徑獲取 247
9.3.2 文件系統(tǒng)瀏覽 249
9.4 獲取文件信息 253
9.5 監(jiān)視文件和目錄變化 257
第10章 Qt 6網(wǎng)絡(luò)與通信 259
10.1 獲取本機(jī)網(wǎng)絡(luò)信息 259
10.2 基于UDP的網(wǎng)絡(luò)廣播程序 262
10.2.1 UDP工作原理 262
10.2.2 UDP 編程模型 263
10.2.3 UDP服務(wù)器編程實(shí)例 263
10.2.4 UDP客戶端編程實(shí)例 266
10.3 基于TCP的網(wǎng)絡(luò)聊天室程序 268
10.3.1 TCP工作原理 269
10.3.2 TCP編程模型 269
10.3.3 TCP服務(wù)器端編程實(shí)例 269
10.3.4 TCP客戶端編程實(shí)例 275
10.4 Qt網(wǎng)絡(luò)應(yīng)用開發(fā)初步 280
10.4.1 簡(jiǎn)單網(wǎng)頁(yè)瀏覽器實(shí)例 281
10.4.2 文件下載實(shí)例 282
第11章 Qt 6事件處理及實(shí)例 285
11.1 鼠標(biāo)事件實(shí)例 285
11.2 鍵盤事件實(shí)例 287
11.3 事件過(guò)濾實(shí)例 293
第12章 Qt 6多線程 298
12.1 多線程實(shí)例 298
12.2 多線程控制 302
12.2.1 互斥量 302
12.2.2 信號(hào)量 303
12.2.3 線程等待與喚醒 306
12.3 多線程應(yīng)用 310
12.3.1 服務(wù)器端編程實(shí)例 310
12.3.2 客戶端編程實(shí)例 314
第13章 Qt 6數(shù)據(jù)庫(kù) 319
13.1 數(shù)據(jù)庫(kù)基本概念 319
13.2 常用SQL命令 322
13.2.1 數(shù)據(jù)查詢 322
13.2.2 數(shù)據(jù)操作 325
13.3 Qt操作SQLite數(shù)據(jù)庫(kù)及實(shí)例 326
13.3.1 控制臺(tái)方式操作及實(shí)例 327
13.3.2 【綜合實(shí)例】:操作SQLite數(shù)據(jù)庫(kù)和主/從視圖操作XML 333
13.4 Qt操作流行關(guān)系數(shù)據(jù)庫(kù)及實(shí)例 359
第14章 Qt 6操作Office 369
14.1 Qt操作Office的基本方式 369
14.1.1 QAxObject對(duì)象訪問(wèn) 369
14.1.2 AxWidget界面顯示 371
14.1.3 項(xiàng)目配置 372
14.2 Qt對(duì)Office的基本讀寫 373
14.2.1 程序界面 373
14.2.2 全局變量及方法 374
14.2.3 對(duì)Excel的讀寫 375
14.2.4 對(duì)Word的讀寫 377
14.3 Qt操作Excel實(shí)例:計(jì)算高考錄取率 379
14.3.1 程序界面 380
14.3.2 全局變量及方法 381
14.3.3 功能實(shí)現(xiàn) 381
14.3.4 運(yùn)行演示 383
14.4 Qt操作Word實(shí)例 385
14.4.1 讀取Word表格數(shù)據(jù):中國(guó)歷年高考數(shù)據(jù)檢索 385
14.4.2 向文檔輸出表格:輸出5年高考信息統(tǒng)計(jì)表 389
第15章 Qt 6多國(guó)語(yǔ)言國(guó)際化 394
15.1 基本概念 394
15.1.1 國(guó)際化支持的實(shí)現(xiàn) 394
15.1.2 翻譯工作:“*.qm”文件的生成 395
15.2 語(yǔ)言國(guó)際化應(yīng)用實(shí)例 395
15.2.1 簡(jiǎn)單測(cè)試 395
15.2.2 選擇語(yǔ)言翻譯文字 399
第16章 Qt 6單元測(cè)試框架 405
16.1 QTestLib框架 405
16.2 簡(jiǎn)單的Qt單元測(cè)試 405
16.3 數(shù)據(jù)驅(qū)動(dòng)測(cè)試 411
16.4 簡(jiǎn)單性能測(cè)試 415
第2部分 Qt 6綜合實(shí)例
第17章 【綜合實(shí)例】:電子商城系統(tǒng) 417
17.1 商品管理系統(tǒng)功能需求 417
17.1.1 登錄功能 417
17.1.2 新品入庫(kù)功能 418
17.1.3 預(yù)售訂單功能 419
17.2 項(xiàng)目開發(fā)準(zhǔn)備 419
17.2.1 項(xiàng)目配置 419
17.2.2 編譯MySQL驅(qū)動(dòng) 421
17.2.3 數(shù)據(jù)庫(kù)準(zhǔn)備 424
17.3 商品管理系統(tǒng)界面設(shè)計(jì) 429
17.3.1 總體設(shè)計(jì) 429
17.3.2 “新品入庫(kù)”頁(yè) 430
17.3.3 “預(yù)售訂單”頁(yè) 431
17.3.4 登錄窗口 432
17.4 商品管理系統(tǒng)功能實(shí)現(xiàn) 435
17.4.1 登錄功能實(shí)現(xiàn) 435
17.4.2 主體程序框架 437
17.4.3 界面初始化功能實(shí)現(xiàn) 442
17.4.4 新品入庫(kù)功能實(shí)現(xiàn) 445
17.4.5 預(yù)售訂單功能實(shí)現(xiàn) 447
17.5 商品管理系統(tǒng)運(yùn)行演示 449
17.5.1 登錄電子商城 449
17.5.2 新品入庫(kù)和清倉(cāng) 450
17.5.3 預(yù)售下訂單 450
第18章 【綜合實(shí)例】:簡(jiǎn)單字處理軟件 453
18.1 核心功能界面演示 453
18.2 界面設(shè)計(jì)與開發(fā) 454
18.2.1 菜單系統(tǒng)設(shè)計(jì) 454
18.2.2 工具欄設(shè)計(jì) 462
18.2.3 建立MDI程序框架 465
18.2.4 子窗口管理 468
18.2.5 界面生成試運(yùn)行 475
18.3 基本編輯功能實(shí)現(xiàn) 475
18.3.1 打開文檔 475
18.3.2 保存文檔 478
18.3.3 文檔操作 482
18.4 文檔排版美化功能實(shí)現(xiàn) 483
18.4.1 字體格式設(shè)置 483
18.4.2 段落對(duì)齊設(shè)置 486
18.4.3 顏色設(shè)置 488
18.4.4 段落標(biāo)號(hào)、編號(hào) 489
18.4.5 文檔打印與預(yù)覽 492
第19章 【綜合實(shí)例】:微信客戶端程序 495
19.1 界面設(shè)計(jì)與開發(fā) 495
19.1.1 核心功能界面演示 495
19.1.2 登錄對(duì)話框設(shè)計(jì) 498
19.1.3 聊天窗口設(shè)計(jì) 499
19.1.4 文件傳輸服務(wù)器界面設(shè)計(jì) 501
19.1.5 文件傳輸客戶端界面設(shè)計(jì) 502
19.2 登錄功能實(shí)現(xiàn) 502
19.3 基本聊天會(huì)話功能實(shí)現(xiàn) 505
19.3.1 基本原理 506
19.3.2 消息類型與UDP廣播 506
19.3.3 會(huì)話過(guò)程的處理 511
19.3.4 聊天程序試運(yùn)行 513
19.4 文件傳輸功能實(shí)現(xiàn) 513
19.4.1 基本原理 513
19.4.2 服務(wù)器開發(fā) 514
19.4.3 客戶端開發(fā) 519
19.4.4 主界面的控制 522
19.4.5 文件傳輸試驗(yàn) 525
第3部分 Qt擴(kuò)展應(yīng)用:OpenCV
第20章 OpenCV環(huán)境搭建 527
20.1 安裝CMake 527
20.2 添加系統(tǒng)環(huán)境變量 528
20.3 下載OpenCV 529
20.4 下載Contrib 529
20.5 編譯前準(zhǔn)備 530
20.6 編譯配置 533
20.7 開始編譯 537
20.8 安裝OpenCV庫(kù) 538
第21章 OpenCV處理圖片實(shí)例 540
21.1 圖片美化實(shí)例 541
21.1.1 圖片增強(qiáng)實(shí)例 541
21.1.2 平滑濾波實(shí)例 547
21.2 多圖合成實(shí)例 553
21.2.1 程序界面 554
21.2.2 全局變量及方法 555
21.2.3 初始化顯示 555
21.2.4 功能實(shí)現(xiàn) 556
21.2.5 運(yùn)行效果 557
21.3 圖片旋轉(zhuǎn)縮放實(shí)例 558
21.3.1 程序界面 558
21.3.2 全局變量及方法 559
21.3.3 初始化顯示 560
21.3.4 功能實(shí)現(xiàn) 561
21.3.5 運(yùn)行效果 562
21.4 圖片智能識(shí)別實(shí)例 563
21.4.1 尋找匹配物體實(shí)例 563
21.4.2 人臉識(shí)別實(shí)例 568
第22章 OpenCV【綜合實(shí)例】:醫(yī)院遠(yuǎn)程診斷系統(tǒng) 573
22.1 遠(yuǎn)程診斷系統(tǒng)功能需求 573
22.1.1 診療點(diǎn)科室管理 573
22.1.2 CT影像顯示和處理 574
22.1.3 患者信息選項(xiàng)卡 574
22.1.4 后臺(tái)數(shù)據(jù)庫(kù)瀏覽 574
22.1.5 界面的總體效果 575
22.2 Qt項(xiàng)目工程創(chuàng)建與配置 575
22.3 遠(yuǎn)程診療系統(tǒng)界面設(shè)計(jì) 578
22.4 遠(yuǎn)程診療系統(tǒng)功能實(shí)現(xiàn) 581
22.4.1 數(shù)據(jù)庫(kù)準(zhǔn)備 581
22.4.2 Qt應(yīng)用程序主體框架 583
22.4.3 界面初始化功能實(shí)現(xiàn) 588
22.4.4 診斷功能實(shí)現(xiàn) 590
22.4.5 患者信息表單 592
22.5 遠(yuǎn)程診療系統(tǒng)運(yùn)行演示 594
22.5.1 啟動(dòng)、連接數(shù)據(jù)庫(kù) 594
22.5.2 執(zhí)行診斷分析 595
22.5.3 表單信息聯(lián)動(dòng) 597
22.5.4 查看病歷 597
第4部分 QML和Qt Quick及其應(yīng)用
第23章 QML編程基礎(chǔ) 598
23.1 QML概述 598
23.1.1 第一個(gè)QML程序 599
23.1.2 QML文檔構(gòu)成 603
23.2 QML可視元素 606
23.2.1 Rectangle(矩形)元素 606
23.2.2 Image(圖像)元素 607
23.2.3 Text(文本)元素 609
23.2.4 自定義元素(組件) 611
23.3 QML元素布局 613
23.3.1 Positioner(定位器) 613
23.3.2 Anchor(錨) 618
23.4 QML事件處理 622
23.4.1 鼠標(biāo)事件 622
23.4.2 鍵盤事件 624
23.4.3 輸入控件與焦點(diǎn) 627
23.5 QML集成JavaScript 629
23.5.1 調(diào)用JavaScript函數(shù) 629
23.5.2 導(dǎo)入JS文件 631
第24章 QML動(dòng)畫特效 633
24.1 QML動(dòng)畫元素 633
24.1.1 PropertyAnimation元素 633
24.1.2 其他動(dòng)畫元素 638
24.1.3 Animator元素 640
24.2 動(dòng)畫流UI界面 642
24.2.1 狀態(tài)和切換 642
24.2.2 設(shè)計(jì)組合動(dòng)畫 645
24.3 圖像特效 648
24.3.1 3D旋轉(zhuǎn) 648
24.3.2 色彩處理 650
24.4 餅狀菜單 652
第25章 Qt Quick Controls開發(fā)基礎(chǔ)及實(shí)例 655
25.1 Qt Quick Controls概述 655
25.1.1 第一個(gè)Qt Quick Controls程序 655
25.1.2 更換界面主題樣式 657
25.2 Qt Quick控件 658
25.2.1 概述 658
25.2.2 基本控件 659
25.2.3 高級(jí)控件 663
25.2.4 樣式定制 668
25.3 Qt Quick對(duì)話框 676
25.4 Qt Quick選項(xiàng)標(biāo)簽 681
25.5 Qt Quick擴(kuò)展庫(kù)組件實(shí)例 686
第5部分 Qt Quick 3D開發(fā)基礎(chǔ)
第26章 Qt Quick 3D場(chǎng)景、視圖與光源 690
26.1 Qt Quick 3D編程基礎(chǔ) 690
26.1.1 Qt Quick 3D坐標(biāo)系統(tǒng) 690
26.1.2 Qt Quick 3D庫(kù)的引入 691
26.1.3 Qt Quick 3D程序結(jié)構(gòu) 692
26.2 場(chǎng)景中相機(jī)位置的變化 695
26.2.1 創(chuàng)建項(xiàng)目及導(dǎo)入資源 696
26.2.2 編寫代碼 699
26.2.3 運(yùn)行效果 705
26.3 Node包裝模型的加載 706
26.4 視圖與光源 708
26.4.1 基本概念 708
26.4.2 程序框架 709
26.4.3 場(chǎng)景中的模型 712
26.4.4 視圖及切換 713
26.4.5 光源控制 714
26.4.6 面板設(shè)計(jì) 718
第27章 Qt Quick 3D【綜合實(shí)例】:益智積木 721
27.1 “益智積木”軟件結(jié)構(gòu)設(shè)計(jì) 721
27.1.1 導(dǎo)入資源 721
27.1.2 項(xiàng)目結(jié)構(gòu) 724
27.1.3 程序框架 726
27.2 形狀的操控 728
27.2.1 面板設(shè)計(jì) 728
27.2.2 創(chuàng)建物體 732
27.2.3 選擇物體 732
27.2.4 移動(dòng)物體 733
27.2.5 轉(zhuǎn)動(dòng)物體 734
27.2.6 物體對(duì)鼠標(biāo)事件的響應(yīng) 736
27.3 更換材質(zhì) 737
27.4 添加文字 739
27.5 其他形狀物體組件的開發(fā) 743
第6部分 Qt 6跨平臺(tái)開發(fā)基礎(chǔ)
第28章 Visual Studio中的Qt 6開發(fā) 747
28.1 MSVC環(huán)境安裝和配置 747
28.1.1 安裝Qt及MSVC編譯器 747
28.1.2 安裝VS及相關(guān)插件 749
28.1.3 配置MSVC編譯器 753
28.1.4 安裝C++桌面開發(fā)組件 754
28.2 VS開發(fā)Qt Widgets程序 755
28.2.1 創(chuàng)建Qt Widgets項(xiàng)目 755
28.2.2 配置項(xiàng)目屬性 757
28.2.3 開發(fā)Qt Widgets程序 758
28.3 VS開發(fā)Qt Quick程序 763
28.3.1 創(chuàng)建Qt Quick項(xiàng)目 763
28.3.2 配置項(xiàng)目屬性 764
28.3.3 開發(fā)Qt Quick程序 764
28.4 VS打開Qt Creator項(xiàng)目 766
28.4.1 打開Qt Widgets項(xiàng)目 766
28.4.2 打開Qt Quick項(xiàng)目 769
第29章 Qt 6中的Android開發(fā) 770
29.1 Android開發(fā)環(huán)境構(gòu)建 770
29.1.1 安裝JDK 8 770
29.1.2 安裝Android SDK 773
29.1.3 安裝手機(jī)驅(qū)動(dòng) 778
29.1.4 添加Qt組件 781
29.1.5 安裝Android NDK 782
29.2 Qt開發(fā)Android程序 785
29.2.1 用Scroll模板開發(fā)滾動(dòng)圖書選項(xiàng)列表 786
29.2.2 用Stack模板展示圖書詳細(xì)信息 791
29.2.3 用Swipe模板滑動(dòng)翻看藝術(shù)作品 796
第30章 Qt 6中的Python開發(fā) 800
30.1 Qt的Python開發(fā)環(huán)境構(gòu)建 800
30.1.1 安裝Python 800
30.1.2 安裝PySide2 802
30.1.3 配置編譯器 805
30.2 Qt開發(fā)Python程序?qū)嵗?810
30.2.1 開發(fā)需求 810
30.2.2 開發(fā)準(zhǔn)備 810
30.2.3 創(chuàng)建Qt for Python項(xiàng)目 813
30.2.4 Qt設(shè)計(jì)Python程序界面 815
30.2.5 Python程序框架 816
30.2.6 功能實(shí)現(xiàn) 817
第31章 Linux(Ubuntu)上的Qt 6開發(fā) 820
31.1 Linux平臺(tái)安裝Qt Creator 820
31.1.1 獲取安裝包及授權(quán) 820
31.1.2 向?qū)О惭bQt Creator 823
31.1.3 補(bǔ)充安裝依賴組件 825
31.2 配置QMake工具 827
31.2.1 安裝qtchooser 827
31.2.2 安裝Qt 6 SDK 828
31.2.3 關(guān)聯(lián)QMake與Qt版本 830
31.3 安裝GCC編譯器 830
31.4 安裝其他必備組件 831
31.5 Ubuntu上Qt開發(fā)入門 832
31.5.1 創(chuàng)建項(xiàng)目 832
31.5.2 Ubuntu中文輸入 838
31.5.3 開發(fā)Qt程序 841
第7部分 附 錄
附錄A C++相關(guān)知識(shí) 844
A.1 C++程序結(jié)構(gòu) 844
A.2 C++預(yù)處理命令 845
A.3 C++異常處理 847
A.4 C++面向?qū)ο缶幊?849
附錄B Qt 6簡(jiǎn)單調(diào)試 859
B.1 修正語(yǔ)法錯(cuò)誤 859
B.2 設(shè)置斷點(diǎn) 860
B.3 程序調(diào)試運(yùn)行 860
B.4 查看和修改變量的值 861
B.5 qDebug()的用法 863