Qt 平臺體係與應用 : Qt5.5 + 核心方法、技巧與案例
內容描述
《Qt平臺體系與應用:Qt5.5+核心方法、技巧與案例》重點介紹了基於Qt開發體系結構中面向底層和頂層程序設計的項目研究結果,以一套集成軟件層、硬件層、網絡層、跨語言層和虛擬服務與虛擬設備層等完整應用程序的開發為例,對Qt平臺的相關原理、方法與技巧進行說明。在底層方面,主要研究了Qt在桌面系統底層驅動程序開發的模塊結構與特點,並以我國二代身份證讀卡器及SIM卡讀/寫卡器為對象,給出系統設計、代碼與實例。在頂層方面,重點研究了當前跨平臺、跨語言、跨代碼的遠程程序通信協議,重點講解了基於C++的Qt應用與基於Java語言的Web應用,其通過第三方遠程通信協議進行跨語言級的函數調用,尤其重點介紹了允許二進制通信的Hessian遠程通信協議,並給出了相應的解析實例。此外《Qt平臺體系與應用:Qt5.5+核心方法、技巧與案例》還介紹了Qt主要的高級功能模塊,包括界面設計、Web網站文件的上傳與下載、應用實例檢測、外部動態鏈接庫調用、系統托盤管理、網絡連接狀態的查看、外部進程的執行、進程間通過Windows消息通信、INI與JSON格式文件的讀/寫、程序打包與發布等課題。
目錄大綱
第1章引言
1.1 Qt框架的特色
1.1.1跨平台
1.1.2藝術級圖形界面設計
1.1.3抽象化核心模塊設計
1.1.4環境準備
1.2本書的特色
1.2.1完整準確的參考
1.2.2系統深入的說明
1.2.3實例演示:遠程傳輸與控制系統
1.3遠程傳輸與控制系統的結構
1.3.1總體結構
1.3.2軟件層
1.3.3硬件層
1.3.4網絡層
1.3.5跨語言通信層
1.3.6數據層
1.3.7遠端控制層
1.3.8打包與發布
第2章軟件層系統功能模塊
2.1 Qt項目
2.1.1 Qt工程
2.1.2 PRO文件
2.1.3影子編譯
2.1.4版本控制
2.2系統程序窗口
2.2.1對話框開發
2.2.2資源管理
2.2.2.1圖片與圖標資源
2.2.2.2 css樣式表
2.3登錄系統
2.3.1按鈕響應
2.3.2讀/寫組件值
2.4托盤管理
2.4.1 Windows系統托盤
2.4.2事件劫持
2.4.3菜單管理
2.4.3.1鼠標右鍵動作
2.4.3.2鼠標左鍵動作
2.5單實例管理
2.5.1進程與實例
2.5.2單實例管理概述
2.6再論對話框
2.6.1系統對話框
2.6.2自定義對話框
第3章Web網絡服務 塊
3.1 Qt網絡模塊
3.1.1網絡模塊類
3.1.2 QNetworkAccessManager類與QNetworkReply類
3.2下載升級文件
3.2.1信號與槽函數
3.2.2功能模塊與類
3.3程序自動升級
3.3.1強制升級機制
3.3.2系統實現
3.3.2.1讀取INI文件中的版本信息
3.3.2.2設計本地信息INI文件
3.3.2.3讀寫MyDocuments目錄下的INI文件
3.3.2.4邏輯判斷
3.3.2.5開始下載
3.3.2.6啟動進程外EXE文件完成升級
第4章通用跨語言層遠程網絡通信
4.1遠程調用與通信
4.1.1進程間通信
4.1.2網絡間通信
4.1.2.1通信協議
4.1.2.2通信程序與語言
4.1.3跨語言通信
4.1.3.1可執行程序層跨語言通信
4.1.3.2鏈接庫層跨語言通信
4.1.3.3代碼層跨語言通信
4.2代碼層跨語言通信協議
4.2.1 Java RMI
4.2.2 Web Service
4.2.2.1 Web Service功能實現
4.2. 2.2 Web Service功能描述
4.2.2.3 Web Service遠程調用
4.2.3 Hessian協議
4.2.3.1 Hessian協議介紹
4.2.3.2代碼實現
4.3 Qt中的Hessian協議
4.3.1 Hessian的C語言實
4.3.1.1官方實現
4.3.1.2第三方實現
4.3.1.3 Qt實現
4.3.2 qhessian的遠程過程調用
4.3.2.1 qhessian包的結構
4.3.2.2通信原理與代碼實現
4.4遠程傳輸與控制系統實例解析
4.4.1總體需求分析
4.4.2服務器端業務需求與功能模塊
4.4.2.1功能模塊與接口
4.4.2.2數據層支持
4.4.3客戶端業務需求與功能模塊
4.4.3.1客戶端引入qhessian模塊
4.4.3.2客戶端實現
4.4.3.3主程序接口調用
4.4.4編譯與調試
4.4.4.1配置文件
4.4.4.2服務器與客戶端
第5章硬件模塊與底層驅動
5.1 Qt引入硬件層
5.1.1動態鏈接庫
5.1.2 Qt程序靜態加載動態鏈接庫
5.1.2.1 Linux平台
5.1.2.2 Windows平台
5.1.2.3代碼實現
5.1.3 Qt程序動態加載動態鏈接庫
5.1.4 Qt程序加載非完整動態鏈接庫
5.2二代身份證讀卡器
5.2. 1功能描述
5.2.1.1二代身份證
5.2.1.2二代身份證讀卡器
5.2.2驅動接口
5.2.2.1公安部標準接口
5.2.2.2 C語言實現
5.2.3 Qt調用
5.2.3.1讀取身份證信息
5.2 .3.2身份證信息的原始格式
5.2.3.3身份證照片與指紋信息
5.2.3.4 Hessian上傳身份證信息
5.2.4兼容性
5.3 SIM卡讀/寫卡器
5.3.1 SIM卡
5.3.2 SIM卡開發
5.3 .2.1 ISO 7816
5.3.2.2 GSM 11.11
5.3.2.3 GSM 11.14
5.3.2.4 APDU指令集
5.3.2.5 Winscard封裝
5.3.3實際系統開發
5.3.3.1聯通SIM卡
5.3.3.2移動SIM卡
5.3.4 Qt實現SIM卡的讀/寫操作
5.3.4.1功能需求與程序架構
5.3.4.2讀/寫SIM卡
5.4其他硬件設備
5.4.1指紋識別設備
5.4.2短信業務模塊設備
第6章Qt關鍵模塊與高級功能
6.1 Qt優語言特色:再論信號與槽
6.1.1信號與槽原理
6.1.1.1 Windows傳統消息機制
6.1.1.2 Qt機制
6.1.2示例程序
6.1.2.1定義信號與槽
6.1.2.2創建信號與槽函數
6.1.2.3連接並使用信號與槽
6.2 Qt事件處理
6.2.1事件處理機制
6.2.2高級事件響應
6.2.2.1自主推動事件循環
6.2.2.2與Windows程序消息通信
6.3系統關鍵功能
6.3.1查看網絡是否連接
6.3. 2識別操作系統位數
6.3. 3查看系統目錄
6.3.3.1獲取Windows系統目錄
6.3.3.2獲取應用程序所在目錄
6.3.4防止程序自動退出
6.3.5執行外部進程
6.3.5.1啟動第三方進程
6.3.5.2停止第三方進程
6.3.5.3後台方式啟動第三方進程
6.3.5.4指定輸出方式啟動第三方進程
6.3.5.5啟動第三方BAT程序
6.4服務模塊
6.4.1 INI文件操作
6.4.2 JSON文件操作
6.4.2.1簡單格式的JSON串
6.4.2.2複雜格式的JSON串
6.4.3 XML文件操作
6.4.4二進制數據處理
6.4.4.1 base64碼
6.4.4.2文本化處理
6.4.5 Qt日誌
第7章程序打包與發布
7.1發布Qt程序
7.1.1 Release與Debug編譯
7.1.2動態鏈接庫依賴
7.2打包程序
7.2.1 InstallShield打包
7.2.1.1創建基本的安裝包
7.2.1.2卸載功能
7.2.1.3安裝第三方包與安裝後重啟
7.2.2 inno打包
7.2.2.1基本功能
7.2 .2.2高級功能
參考文獻
作者介紹
《Qt平台體係與應用:Qt5.5+核心方法、技巧與案例》所有代碼均基於Qt5.5.1平台,可供該領域的程序設計人員、工程開發與研究人員參考,也可供自然科學和工程技術領域中的相關人員參考。