Qt 4開發實踐 ( 簡體 字) |
作者:鄭阿奇 | 類別:1. -> 作業系統 -> Linux -> QT |
譯者: |
出版社:電子工業出版社 | 3dWoo書號: 28866 詢問書籍請說出此書號!【缺書】 【不接受訂購】 |
出版日:1/1/2011 |
頁數:496 |
光碟數:0 |
|
站長推薦:  |
印刷:黑白印刷 | 語系: ( 簡體 版 ) |
|
【不接受訂購】 |
ISBN:9787121126697 |
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 序 |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證) |
作者序: |
譯者序: |
前言:Qt是諾基亞公司C++可視化開發平臺,目前最新版本為2010年發布的Qt 4.6。與Visual C++相比,Qt簡單方便、功能完善、跨平臺、擴展能力強,可以進行嵌入式開發。 1996年,Qt進入商業領域,已成為全世界范圍內數千種成功的應用程序的基礎。它也是流行的Linux桌面環境KDE 的基礎。Qt是一個跨平臺的C++圖形用戶界面應用程序框架(C++ GUI),能提供給應用程序開發者建立藝術級圖形用戶界面所需的所用功能。它是完全面向對象的,很容易擴展,并且可進行組件編程。 Qt商業版提供給商業軟件開發。它們提供傳統商業軟件發行版以及在協議有效期內的免費升級和技術支持服務。而Qt開源版提供了和商業版本同樣的功能,它是免費的。從Qt 4.5起,諾基亞將為Qt增添新的開源LGPL授權選擇,并且Qt源代碼庫面向公眾開放,Qt開發人員可通過為Qt以及與Qt相關的項目貢獻代碼、翻譯、示例以及其他內容,協助引導和塑造Qt未來的發展。 如果你需要可視化學習C++,如果你需要用C++開發應用系統,選擇Qt是最佳的。 本書以Qt 4.6作為平臺,循序漸進,通過不同實例對內容加以說明,知識和能力融為一體。 本書首先復習Qt開發中需要著重注意的C++主要知識點,使讀者此后學習Qt更為輕松。然后在簡單介紹開發環境的基礎上,用一個小實例,介紹Qt 4.6開發應用程序的過程,從而總體上有所了解。其后,系統介紹Qt 4.6開發應用程序的所有內容和技術,循序漸進,處處通過實例介紹來理解內容。因為本書經過審讀和試做,所以從前面讀下來,一般不會有什么問題。 為了處理好內容介紹的連續性和內容中出現新的知識詳細說明的矛盾,采用由我們首先提出的在紙介質實現超鏈接的方法。例如,第2章的部分目錄如下: 2.2 Qt的安裝 31 2.2.1 下載Qt Creator 31 2.2.2 運行Qt Creator 31 2.2.3 Qt的開發環境 32 2.3 Qt的開發步驟及實例 34 2.3.1 設計器Qt Designer實現 34 2.3.2 編寫代碼實現 42 L2.2 Qt的安裝 45 L1 伙伴編輯模式(Edit Buddies) 45 L2.3 Qt的開發步驟及實例 45 L1 信號和槽機制(Signal&Slot) 45 L2 功能模塊 47 L3 Qt元對象系統 48 L4 布局管理器 48 表示2.2節中首次出現“伙伴編輯模式(Edit Buddies)”讀者可能不理解,但又不便在當時詳細解析,在對這個名詞加黑的同時有下劃線標識,表示在L2.2節中有專門介紹。同樣,2.3節中有4個名詞在L2.3節中詳細解析。 本書介紹內容時使用了很多實例,書中提供的開發過程和代碼本身就是系統和完備的。但為了方便讀者上機練習,在書中實例同時提供源代碼編號CHXx(例如CH201是第2章的01例),這些代碼可在出版社網站上免費下載。 通過本書學習,結合實例上機練習,一般能夠在比較短的時間內掌握Qt應用技術。 本書由南京師范大學鄭阿奇主編,東南大學陳超編寫。參加本書編寫的還有鄭進、陶衛冬、鄧拼搏、嚴大牛、韓翠青、王海嬌、劉博宇、陳瀚、孫德榮、吳明祥、周何駿、徐斌、孫承龍、袁永福等。 本書配有教學課件和書中所有實例源代碼及其相關文件,需要者可從出版社網站上免費下載。網站地址為:http:// www.hxedu.com.cn。 由于我們的水平有限,錯誤在所難免,敬請廣大讀者、師生批評指正。 意見、建議郵箱:easybooks@163.com 編 者 2010.10 |
內容簡介:
Qt是諾基亞公司C++可視化開發平臺,目前最新版本2010年發布的Qt4.6。本書以Qt4.6作為平臺,先介紹Qt平臺開發中需要著重注意的C++主要知識點,在簡單介紹開發環境的基礎上,用一個小的實例,介紹Qt4.6開發應用程序的過程,然后系統介紹Qt應用程序的開發和編程技術,一般均通過實例介紹和理解內容。本書經過非作者審讀試做。實例代碼可在出版社網站上免費下載。 讀者對象:本書可作為Qt學習和開發人員參考,也可作為大學教材或者作為Qt培訓用書。 |
目錄:目 錄 第1章 C++相關知識 1 1.1 C++程序結構 1 1.2 C++預處理 2 1.2.1 宏定義命令 2 1.2.2 文件包含命令 3 1.2.3 條件編譯命令 3 1.3 C++異常處理 4 1.3.1 使用C++異常處理 4 1.3.2 嵌套異常和棧展開 7 1.4 C++面向對象程序設計 7 1.4.1 基本概念 7 1.4.2 類的拷貝構造函數和賦值函數 13 1.4.3 模板類 17 1.4.4 繼承與接口 22 1.4.5 多重繼承及虛繼承 25 1.4.6 多態 26 1.4.7 友元 27 第2章 Qt概述 30 2.1 什么是Qt 30 2.2 Qt的安裝 31 2.2.1 下載Qt Creator 31 2.2.2 運行Qt Creator 31 2.2.3 Qt的開發環境 32 2.3 Qt的開發步驟及實例 34 2.3.1 設計器Qt Designer實現 34 2.3.2 編寫代碼實現 42 L2.2 Qt的安裝 45 L1 伙伴編輯模式(Edit Buddies) 45 L2.3 Qt的開發步驟及實例 45 L1 信號和槽機制(Signal&Slot) 45 L2 功能模塊 47 L3 Qt元對象系統 48 L4 布局管理器 48 第3章 Qt的模板庫、工具類及控件 49 3.1 字符串類QString 49 3.1.1 操作字符串 49 3.1.2 查詢字符串數據 51 3.1.3 字符串的轉換 51 3.2 Qt容器類 53 3.2.1 QList類、QLinkedList類和QVector類 54 3.2.2 QMap類和QHash類 59 3.3 QVariant類 62 3.4 Qt的算法及正則表達式 64 3.4.1 Qt常用算法 64 3.4.2 基本的正則表達式 65 3.5 控件 66 3.5.1 按鈕組(Buttons) 66 3.5.2 輸入部件組(Input Widgets) 68 3.5.3 顯示控件組(Display Widgets) 69 3.5.4 空間間隔組(Spacers) 71 3.5.5 布局管理組(Layout) 71 3.5.6 容器組(Containers) 71 3.5.7 項目視圖組(Item Views) 74 3.5.8 項目控件組(Item Widgets) 76 3.5.9 小綜合例子 81 L3.1 字符串類QString 84 L1 隱式共享 84 L2 內存分配策略 85 L3.5 控件 86 L1 Qt::WindowFlags枚舉類型 86 第4章 布局管理 88 4.1 分割窗口QSplitter類 88 4.2 停靠窗口QDockWidget類 90 4.3 堆棧窗體QStackedWidget類 93 4.4 基本布局(QLayout) 96 4.5 綜合例子:修改用戶資料 101 第5章 基本對話框 113 5.1 標準文件對話框:QFileDialog類 117 5.1.1 函數說明 117 5.1.2 創建步驟 118 5.2 標準顏色對話框:QColorDialog類 119 5.2.1 函數說明 119 5.2.2 創建步驟 119 5.3 標準字體對話框:QFontDialog類 120 5.3.1 函數說明 120 5.3.2 創建步驟 120 5.4 標準輸入對話框:QInputDialog類 121 5.4.1 標準字符串輸入對話框 125 5.4.2 標準條目選擇對話框 125 5.4.3 標準int類型輸入對話框 126 5.4.4 標準double類型輸入對話框 127 5.5 消息對話框:QMessageBox類 128 5.5.1 Question消息框 131 5.5.2 Information消息框 132 5.5.3 Warning消息框 132 5.5.4 Critical消息框 133 5.5.5 About消息框 133 5.5.6 About Qt消息框 134 5.6 自定義(Custom)消息框 134 5.7 工具盒QToolBox類 136 5.8 進度條(QProgressBar/QProgressDialog) 141 5.9 QPalette類與移動圖片綜合實例 146 5.9.1 QPalette類 149 5.9.2 QTime類 156 5.10 可擴展對話框的基本實現方法 156 5.11 不規則窗體 160 5.12 程序啟動畫面(QSplashScreen) 163 5.13 多文檔的創建 164 5.14 使用Qt Designer設計對話框 168 第6章 QmainWindow主窗體 172 6.1 創建菜單的菜單、工具欄以及動作 176 6.1.1 動作(Action)的實現 177 6.1.2 菜單(Menus)的實現 179 6.1.3 工具欄(ToolBars)的實現 180 6.2 新建文件 182 6.3 標準文件對話框(QFileDialog) 183 6.4 標準打印對話框(QPrintDialog) 185 6.4.1 文本打印 185 6.4.2 圖像打印 186 6.5 QMatrix實現圖像坐標變換 188 6.5.1 縮放功能 188 6.5.2 旋轉功能 189 6.5.3 鏡像功能 190 6.6 文本編輯 191 6.6.1 設置字體功能 194 6.6.2 設置字號功能 195 6.6.3 設置文字加粗功能 195 6.6.4 設置文字斜體功能 195 6.6.5 設置文字加下畫線功能 196 6.6.6 設置文字顏色功能及標準顏色對話框(QColorDialog) 196 6.6.7 設置字符格式功能 197 6.7 實現段落對齊及文本排序功能 197 6.7.1 實現段落對齊功能 198 6.7.2 實現文本排序功能 199 第7章 圖形與圖畫 203 7.1 各類位置相關函數的區別 203 7.2 各種與位置相關函數的使用場合 204 7.3 各種基礎圖形的繪制 208 7.3.1 繪圖區的實現 209 7.3.2 主窗口的實現 213 7.4 雙緩沖機制 226 7.4.1 繪圖區的實現 227 7.4.2 主窗口的實現 231 7.5 SVG格式圖片的顯示 234 L7.5 SVG格式圖片的顯示 240 L1 XML 240 第8章 圖形視圖(GraphicsView)框架 247 8.1 GraphicsView體系結構 247 8.1.1 GraphicsView框架結構的特點 247 8.1.2 GraphicsView框架結構的內容 247 8.2 GraphicsView坐標系統 249 8.3 GraphicsView綜合例子 251 8.3.1 飛舞的蝴蝶例子 251 8.3.2 地圖瀏覽器例子 254 8.3.3 各種GraphicsItem的創建實例 260 8.3.4 GraphicsItem的旋轉、縮放、切變和位移實例 270 第9章 模式/視圖(Model/View)結構 278 9.1 概念 278 9.1.1 模型 279 9.1.2 視圖 279 9.1.3 代理 279 9.1.4 使用已有的模型視圖類例子 279 9.2 模型(Models) 281 9.3 視圖(Views) 285 9.4 代理(Delegates) 298 第10章 文件及磁盤處理 307 10.1 讀寫文本文件 307 10.2 讀寫二進制文件 310 10.3 處理目錄 312 10.4 獲取文件信息 319 10.5 監視文件和目錄變化 324 第11章 網絡與通信 327 11.1 獲取本機網絡信息 327 11.2 基于UDP的網絡廣播程序 330 11.2.1 UDP協議工作原理 330 11.2.2 UDP C/S編程模型 331 11.2.3 UDP服務器端 331 11.2.4 UDP客戶端 333 11.3 基于TCP的網絡聊天室程序 337 11.3.1 TCP協議工作原理 337 11.3.2 TCP C/S編程模型 338 11.3.3 TCP服務器端 338 11.3.4 TCP客戶端 340 11.4 實現HTTP文件下載 350 11.5 實現FTP上傳和下載 356
第12章 事件處理 363 12.1 鼠標事件 363 12.2 鍵盤事件 366 12.3 事件過濾 371 第13章 多線程 377 13.1 多線程的簡單實現 377 13.2 多線程的控制 382 13.2.1 使用QMutex類、QMutexLocker類 383 13.2.2 使用QSemaphore類 384 13.2.3 使用QWaitCondition類 387 13.3 多線程例子 391 13.3.1 服務器端 391 13.3.2 客戶端 396 第14章 數據庫 401 14.1 數據庫基本概念 401 14.2 常用SQL命令 404 14.2.1 SELECT查詢 404 14.2.2 數據操作 408 14.3 Qt操作數據庫 409 14.3.1 Qt操作SQLite數據庫 409 14.3.2 Qt綜合操作數據庫和XML 416 第15章 Qt多國語言國際化 445 15.1 概念 445 15.1.1 QString、QTranslator等類和tr()函數的作用 445 15.1.2 *.qm文件的生成 446 15.2 實例 447 15.2.1 實例1 447 15.2.2 實例2 449 第16章 Qt單元測試框架 454 16.1 QTestLib框架 454 16.2 簡單的Qt單元測試 455 16.3 數據驅動測試 457 16.4 GUI測試 460 16.4.1 仿真GUI事件 461 16.4.2 重放GUI事件 462 16.5 簡單性能測試 463 第17章 Linux下Qt的安裝和使用 465 17.1 安裝Qt步驟 465 17.2 Hello World例子 467 17.2.1 通過編寫代碼實現 468 17.2.2 通過Qt Designer實現 471 附錄A 部分名字 475 附錄B Qt調試 479 |
序: |