Qt 6開發及實例(第5版)

Qt 6開發及實例(第5版)

《Qt 6開發及實例(第5版)》是2022年電子工業出版社出版的圖書,作者是鄭阿奇。

基本介紹

  • 書名:Qt 6開發及實例(第5版)
  • 作者:鄭阿奇
  • 類別:計算機/網路類圖書
  • 出版社:電子工業出版社
  • 出版時間:2022年2月
  • 頁數:884 頁
  • 定價:155 元 
  • 開本:16 開 
  • 裝幀:平塑
  • ISBN:9787121427916
內容簡介,圖書目錄,作者簡介,

內容簡介

Qt是當前非常流行的C++可視化開發軟體。本書全面升級到的Qt 6.0平台,通過豐富的實例介紹Qt和QML編程及其套用開發。全書分為7個部分。第1部分為Qt基礎,在上一版的基礎上基於Qt 6.0的全新類模組和接口,重新實現了所有基礎實例的功能。第2部分為Qt 6綜合實例,設計了電子商城系統、簡單字處理軟體、微信客戶端程式這三大實用案例。第3部分為Qt擴展套用OpenCV,介紹OpenCV的配置及典型圖片處理實例。第4部分為QML和Qt Quick及其套用,基於Qt 6.0支持的Qt Quick Controls 2.5新庫實現了諸多典型套用實例。第5部分是Qt Quick 3D開發基礎,先從基礎的場景、相機、視圖、光源等概念入手,通過程式實例介紹Qt 6 3D開發的基礎知識,然後通過一個綜合的“益智積木”學習軟體來演示Qt 6在3D開發上的強大功能。第6部分是Qt 6跨平台開發技術,介紹了Qt 6在Visual Studio、Android、Python及Linux(Ubuntu)等多種主流平台上的環境配置和程式開發。第7部分為附錄,介紹了C++相關知識和Qt 6的簡單調試。本書提供配套的視頻,分析典型案例,通過掃描二維碼播放。為了方便讀者上機練習,書中實例提供原始碼,其編號為CH×××。原始碼工程檔案可從華信教育資源網(http://www.hxedu.com.cn)免費下載。本書既可作為Qt學習不可多得的一本全面翔實的學習資料和參考用書,也可作為Qt開發技術培訓用書。

圖書目錄

第1部分 Qt 6基礎
第1章 Qt 6概述 1
1.1 什麼是Qt 1
1.2 Qt 6的安裝 2
1.2.1 下載Qt線上安裝器和申請免費賬號 2
1.2.2 安裝Qt 6.x 5
1.2.3 運行Qt Creator 7
1.2.4 Qt 6開發環境簡介 8
1.3 Qt 6開發實例介紹 10
1.3.1 設計器(Qt Designer)開發實例 10
1.3.2 代碼實現開發實例 19
第2章 Qt 6模板庫、工具類及控制項 23
2.1 字元串類 23
2.1.1 操作字元串 23
2.1.2 查詢字元串數據 24
2.1.3 字元串的轉換 25
2.1.4 字元串最佳化 26
2.2 容器類 28
2.2.1 QList、QLinkedList和QVector類 28
2.2.2 QMap類和QHash類 34
2.3 QVariant類 37
2.4 算法及正則表達式 39
2.4.1 Qt 6常用算法 39
2.4.2 基本的正則表達式 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 項目視圖組(Item Views) 49
2.5.8 項目控制項組(Item Widgets) 51
2.5.9 多控制項實例 55
第3章 Qt 6布局管理 58
3.1 分割視窗類:QSplitter 58
3.2 停靠視窗類:QDockWidget 60
3.3 堆疊窗體類:QStackedWidget 62
3.4 基本布局類:QLayout 64
3.5 【綜合實例】:修改用戶資料表單 69
3.5.1 導航頁實現 71
3.5.2 “基本信息”頁設計 72
3.5.3 “聯繫方式”頁設計 75
3.5.4 “詳細資訊”頁設計 76
3.5.5 編寫主函式 78
第4章 Qt 6基本對話框 80
4.1 標準檔案對話框類 83
4.1.1 函式說明 83
4.1.2 創建步驟 84
4.2 標準顏色對話框類 85
4.2.1 函式說明 85
4.2.2 創建步驟 85
4.3 標準字型對話框類 86
4.3.1 函式說明 86
4.3.2 創建步驟 86
4.4 標準輸入對話框類 87
4.4.1 標準字元串輸入對話框 90
4.4.2 標準條目選擇對話框 91
4.4.3 標準int類型輸入對話框 91
4.4.4 標準double類型輸入對話框 92
4.5 訊息對話框類 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 進度條 105
4.9 調色板與電子鐘 108
4.9.1 QPalette類 108
4.9.2 QTime類 114
4.9.3 【綜合實例】:電子時鐘 114
4.10 可擴展對話框 117
4.11 不規則窗體 120
4.12 程式啟動畫面類:QSplashScreen 123
第5章 Qt 6主視窗 125
5.1 Qt 6主視窗構成 125
5.1.1 基本元素 125
5.1.2 【綜合實例】:文本編輯器 126
5.1.3 選單與工具列的實現 129
5.2 Qt 6檔案操作功能 134
5.2.1 新建檔案 134
5.2.2 打開檔案 134
5.2.3 列印檔案 137
5.3 Qt 6圖像坐標變換 139
5.3.1 縮放功能 139
5.3.2 旋轉功能 140
5.3.3 鏡像功能 142
5.4 Qt 6文本編輯功能 143
5.4.1 設定字型 146
5.4.2 設定字號 146
5.4.3 設定文字加粗 146
5.4.4 設定文字斜體 147
5.4.5 設定文字加下畫線 147
5.4.6 設定文字顏色 147
5.4.7 設定字元格式 148
5.5 Qt 6排版功能 148
5.5.1 實現段落對齊 150
5.5.2 實現文本排序 150
第6章 Qt 6圖形與圖片 154
6.1 Qt 6位置函式 154
6.1.1 各種位置函式及區別 154
6.1.2 位置函式的套用 155
6.2 Qt 6基礎圖形的繪製 158
6.2.1 繪圖框架設計 158
6.2.2 繪圖區的實現 159
6.2.3 主視窗的實現 163
6.3 Qt 6雙緩衝機制 175
6.3.1 原理與設計 175
6.3.2 繪圖區的實現 176
6.3.3 主視窗的實現 180
6.4 顯示Qt 6 SVG格式圖片 182
第7章 Qt 6圖形視圖框架 189
7.1 圖形視圖體系結構(Graphics View) 189
7.1.1 Graphics View框架結構的主要特點 189
7.1.2 Graphics View框架結構的三元素 189
7.1.3 GraphicsView框架結構的坐標系統 191
7.2 圖形視圖實例 192
7.2.1 飛舞的蝴蝶實例 192
7.2.2 地圖瀏覽器實例 196
7.2.3 圖元創建實例 200
7.2.4 圖元的旋轉、縮放、切變和位移實例 209
第8章 Qt 6模型/視圖結構 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 讀寫二進制檔案 245
9.3 目錄操作與檔案系統 247
9.3.1 檔案大小及路徑獲取 247
9.3.2 檔案系統瀏覽 249
9.4 獲取檔案信息 253
9.5 監視檔案和目錄變化 257
第10章 Qt 6網路與通信 259
10.1 獲取本機網路信息 259
10.2 基於UDP的網路廣播程式 262
10.2.1 UDP工作原理 262
10.2.2 UDP 編程模型 263
10.2.3 UDP伺服器編程實例 263
10.2.4 UDP客戶端編程實例 266
10.3 基於TCP的網路聊天室程式 268
10.3.1 TCP工作原理 269
10.3.2 TCP編程模型 269
10.3.3 TCP伺服器端編程實例 269
10.3.4 TCP客戶端編程實例 275
10.4 Qt網路套用開發初步 280
10.4.1 簡單網頁瀏覽器實例 281
10.4.2 檔案下載實例 282
第11章 Qt 6事件處理及實例 285
11.1 滑鼠事件實例 285
11.2 鍵盤事件實例 287
11.3 事件過濾實例 293
第12章 Qt 6多執行緒 298
12.1 多執行緒實例 298
12.2 多執行緒控制 302
12.2.1 互斥量 302
12.2.2 信號量 303
12.2.3 執行緒等待與喚醒 306
12.3 多執行緒套用 310
12.3.1 伺服器端編程實例 310
12.3.2 客戶端編程實例 314
第13章 Qt 6資料庫 319
13.1 資料庫基本概念 319
13.2 常用SQL命令 322
13.2.1 數據查詢 322
13.2.2 數據操作 325
13.3 Qt操作SQLite資料庫及實例 326
13.3.1 控制台方式操作及實例 327
13.3.2 【綜合實例】:操作SQLite資料庫和主/從視圖操作XML 333
13.4 Qt操作流行關係資料庫及實例 359
第14章 Qt 6操作Office 369
14.1 Qt操作Office的基本方式 369
14.1.1 QAxObject對象訪問 369
14.1.2 AxWidget界面顯示 371
14.1.3 項目配置 372
14.2 Qt對Office的基本讀寫 373
14.2.1 程式界面 373
14.2.2 全局變數及方法 374
14.2.3 對Excel的讀寫 375
14.2.4 對Word的讀寫 377
14.3 Qt操作Excel實例:計算高考錄取率 379
14.3.1 程式界面 380
14.3.2 全局變數及方法 381
14.3.3 功能實現 381
14.3.4 運行演示 383
14.4 Qt操作Word實例 385
14.4.1 讀取Word表格數據:中國曆年高考數據檢索 385
14.4.2 向文檔輸出表格:輸出5年高考信息統計表 389
第15章 Qt 6多國語言國際化 394
15.1 基本概念 394
15.1.1 國際化支持的實現 394
15.1.2 翻譯工作:“*.qm”檔案的生成 395
15.2 語言國際化套用實例 395
15.2.1 簡單測試 395
15.2.2 選擇語言翻譯文字 399
第16章 Qt 6單元測試框架 405
16.1 QTestLib框架 405
16.2 簡單的Qt單元測試 405
16.3 數據驅動測試 411
16.4 簡單性能測試 415
第2部分 Qt 6綜合實例
第17章 【綜合實例】:電子商城系統 417
17.1 商品管理系統功能需求 417
17.1.1 登錄功能 417
17.1.2 新品入庫功能 418
17.1.3 預售訂單功能 419
17.2 項目開發準備 419
17.2.1 項目配置 419
17.2.2 編譯MySQL驅動 421
17.2.3 資料庫準備 424
17.3 商品管理系統界面設計 429
17.3.1 總體設計 429
17.3.2 “新品入庫”頁 430
17.3.3 “預售訂單”頁 431
17.3.4 登錄視窗 432
17.4 商品管理系統功能實現 435
17.4.1 登錄功能實現 435
17.4.2 主體程式框架 437
17.4.3 界面初始化功能實現 442
17.4.4 新品入庫功能實現 445
17.4.5 預售訂單功能實現 447
17.5 商品管理系統運行演示 449
17.5.1 登錄電子商城 449
17.5.2 新品入庫和清倉 450
17.5.3 預售下訂單 450
第18章 【綜合實例】:簡單字處理軟體 453
18.1 核心功能界面演示 453
18.2 界面設計與開發 454
18.2.1 選單系統設計 454
18.2.2 工具列設計 462
18.2.3 建立MDI程式框架 465
18.2.4 子視窗管理 468
18.2.5 界面生成試運行 475
18.3 基本編輯功能實現 475
18.3.1 打開文檔 475
18.3.2 保存文檔 478
18.3.3 文檔操作 482
18.4 文檔排版美化功能實現 483
18.4.1 字型格式設定 483
18.4.2 段落對齊設定 486
18.4.3 顏色設定 488
18.4.4 段落標號、編號 489
18.4.5 文檔列印與預覽 492
第19章 【綜合實例】:微信客戶端程式 495
19.1 界面設計與開發 495
19.1.1 核心功能界面演示 495
19.1.2 登錄對話框設計 498
19.1.3 聊天視窗設計 499
19.1.4 檔案傳輸伺服器界面設計 501
19.1.5 檔案傳輸客戶端界面設計 502
19.2 登錄功能實現 502
19.3 基本聊天會話功能實現 505
19.3.1 基本原理 506
19.3.2 訊息類型1

作者簡介

鄭阿奇,曾任教於南京師範大學計算機科學與技術學院,主編多本計算機專業教材,多次獲選為國家規劃教材,兩次獲江蘇省優秀教學成果二等獎、江蘇省暢銷圖書編輯二等獎、全國高校出版社優秀暢銷書二等獎、兩次獲南京師範大學優秀教學成果一等獎、南京師範大學精品教材一等獎。

相關詞條

熱門詞條

聯絡我們