Qt C++編程基礎與應用
韓改寧
相關主題
商品描述
本書是計算機類專業課程Qt開發的配套教材,Qt開發是一門軟硬件結合、對編程能力要求較高的課程。本書以Qt 5.12.2為開發平臺,首先介紹Qt基本概念、信號和槽機制、Qt的對話框設計、Qt的主窗口設計、QWidget類及窗口部件、Qt的部件布局管理;然後介紹了Qt的項部件及項數據視圖、Qt的目錄與文件操作、Qt中的事件機制等知識;最後講解Qt的網絡編程技術、Qt的數據庫應用、Qt的多線程技術、Qt的OpenCV技術以及Qt的跨平臺技術等進階內容。
本書文字通俗易懂,內容循序漸進,由淺入深。書中提供了大量案例,可幫助讀者加深對Qt開發工具和編程方法的理解,並更好地掌握嵌入式系統的應用技術和基本開發技能。
本書可作為高等院校計算機軟件開發相關專業的教材,也適合具有C語言或者C++基礎的Qt初學者、軟件開發人員和工程技術人員使用。
作者簡介
韓改寧 碩士生導師,副教授。近年來先後主講課程《單片機原理與應用》、《數字電路》、《嵌入式系統開發》、《嵌入式Linux系統》、《嵌入式軟件設計》、《C語言程序設計》、《QtC++程序設計》等課程。 主要研究方向:智能控制及嵌入式系統開發,主持橫向科研項目2項,主持陜西省教育廳項目1項目,主持校級科研項目3項,參與國家自然基金項目2項、省部級科研項目多項,參編教材3部;發表論文30余篇,其中SCI收錄3篇,EI收錄3篇,核心20余篇,申請專利5項目,軟件著作權2項。 指導學生參加 “全國嵌入式設計大賽”獲得全國三等獎(2項)、賽區一、二、三等獎(5項);指導學生參加“全國信息技術應用水平大賽”獲得全國二等獎(1項),並獲優秀指導教師獎;指導學生參加 “中國互聯網+大學生創新創業大賽” 獲陜西賽區銅獎(3項),其中,互聯網+大賽獲校級特等獎(2項),二等獎(2項);指導學生參加第七屆“第七屆全國大學生工程訓練綜合能力競賽” 獲陜西賽區三等獎(1項);指導學生參加全國大學生創新創業國家級項目(4項),指導學生發表論文6余篇,指導學生參與合作申請實用新型專利2項,軟件著作權1項。2021年入選鹹陽師範學院“雙師型”師資隊伍。
目錄大綱
第一篇 基礎篇
1.1 Qt軟件簡介
1.1.1 Qt基本介紹
1.1.2 Qt的GUI類庫
1.1.3 Qt的版本
1.1.4 Qt的安裝
1.2 Qt與面向對象程序設計
1.2.1 面向對象程序設計概念
1.2.2 面向對象程序設計術語
1.2.3 類及類的成員
1.2.4 類對象的定義及使用方法
1.3 Qt Creator的使用
1.3.1 Qt Creator編輯項目
1.3.2 Qt Creator編譯項目
1.4 Qt類庫
1.5 作業
2.1 信號與槽的原理
2.1.1 信號與槽簡介
2.1.2 信號與槽通信機制
2.2 信號與槽的操作
2.2.1 聲明信號
2.2.2 定義槽
2.2.3 信號與槽的連接方法
2.2.4 信號與槽的斷開方法
2.2.5 emit發送信號
2.2.6 信號與槽機制的局限性
2.3 信號與槽的應用案例
2.4 作業
3.1 Qt的窗口類
3.1.1 窗口類的概念
3.1.2 QDialog窗口類
3.1.3 QDialog類的繼承關系
3.2 內置對話框窗口類
3.2.1 顏色對話框
3.2.2 字體對話框
3.2.3 文件對話框
3.2.4 消息對話框
3.2.5 輸入對話框
3.2.6 頁面設置對話框
3.2.7 打印對話框
3.2.8 打印預覽對話框
3.2.9 進度對話框
3.3 自定義對話框窗口類
3.4 對話框的應用案例
3.5 作業
4.1 主窗口概述
4.1.1 各部件功能
4.1.2 主窗口類
4.2 主窗口的創建方法和設計流程
4.2.1 主窗口的創建方法
4.2.2 主窗口的設計流程
4.3 主窗口應用程序設計
4.3.1 主窗口應用的界面設計
4.3.2 主窗口功能的實現
4.4 主窗口的應用案例
4.5 作業
5.1 QWidget類概述
5.1.1 QWidget窗口類型
5.1.2 QWidget窗口布局
5.2 按鈕控件類
5.2.1 QAbstractButton抽象基類
5.2.2 QPushButton部件
5.2.3 QRadioButton部件
5.2.4 QCheckBox部件
5.2.5 QToolButton部件
5.2.6 QCommandLinkButton部件
5.2.7 QDialogButtonBox部件
5.3 輸入控件類
5.3.1 下拉列表框部件
5.3.2 文本編輯框部件
5.3.3 數值輸入框部件
5.3.4 滑塊部件
5.4 顯示類部件
5.4.1 QLabel部件
5.4.2 QTextBrowser部件
5.4.3 QGraphicsView部件
5.4.4 QLCDNumber部件
5.4.5 QCalendarWidget部件
5.4.6 QProgressBar部件
5.4.7 QOpenGLWidget部件
5.5 容器類部件
5.5.1 QGroupBox部件
5.5.2 QScrollArea部件
5.5.3 QToolBox部件
5.5.4 QTabWidget部件
5.5.5 QStackedWidget部件
5.5.6 QFrame部件
5.5.7 QMdiArea部件
5.6 QWidget類綜合應用案例
5.7 作業
6.1 布局管理概述
6.1.1 QBoxLayout布局
6.1.2 QGridLayout網格布局
6.1.3 QFormLayout表單布局
6.1.4 QStackedLayout堆棧布局
6.2 窗口分割器
6.2.1 QSplitter概述
6.2.2 QSplitter應用
6.3 堆棧窗口部件
6.3.1 QStackedWidget概述
6.3.2 QStackedWidget應用
6.4 綜合應用案例
6.5 作業
7.1 項部件和項視圖部件概述
7.2 項部件Item Widgets
7.2.1 列表部件QListWidget
7.2.2 樹形部件QTreeWidget
7.2.3 表格部件QTableWidget
7.2.4 ItemWidgets綜合應用案例
7.3 Model View
7.3.1 Model View概念
7.3.2 Model模型
7.4 項視圖Item Views
7.4.1 列表視圖部件QListView
7.4.2 樹形視圖部件QTreeView
7.4.3 表格視圖部件QTableView
7.4.4 多列視圖部件QColumnView
7.4.5 撤銷視圖部件QUndoView
7.5 綜合應用案例
7.6 作業
8.1 目錄操作
8.2 I/O操作
8.3 文件信息
8.3.1 I/O設備類
8.3.2 文件類
8.3.3 文件信息類
8.3.4 臨時文件類
8.4 文件的讀寫操作
8.4.1 二進制文件的讀寫操作
8.4.2 文本文件的讀寫操作
8.5 綜合應用案例
8.6 作業
9.1 事件概念
9.2 事件分類
9.3 常用事件
9.3.1 鼠標事件
9.3.2 鍵盤事件
9.3.3 事件過濾器
9.4 定時器事件
9.5 繪圖事件
9.5.1 基本概念
9.5.2 繪圖元素
9.5.3 繪圖操作
9.5.4 圖像加載與存儲
9.5.5 變換函數
9.6 綜合應用案例
9.7 作業
第二篇 進階篇
10.1 計算機網絡概述
10.2 TCP網絡編程
10.2.1 TCP概念
10.2.2 TCP編程模型
10.2.3 TCP通信邏輯
10.2.4 TCP編程案例
10.3 UDP網絡編程
10.3.1 UDP概念
10.3.2 UDP通信原理
10.3.3 UDP編程案例
10.4 HTTP編程
10.4.1 HTTP概念
10.4.2 HTTP通信
10.4.3 URL與資源簡