Windows程序設(shè)計(jì)教程(第2版)
定 價(jià):45 元
- 作者:王秀梅 主編
- 出版時(shí)間:2013/8/1
- ISBN:9787115323354
- 出 版 社:人民郵電出版社
- 中圖法分類:TP316.7
- 頁碼:334
- 紙張:
- 版次:2
- 開本:16開
本書共分為16章,主要內(nèi)容包括Windows編程概述,Windows應(yīng)用程序的類封裝,MFC應(yīng)用程序框架,Windows繪圖程序設(shè)計(jì),文本和字體,消息,菜單、鍵盤和鼠標(biāo),子窗體控件,對(duì)話框,文檔/視圖結(jié)構(gòu)的應(yīng)用程序開發(fā),動(dòng)態(tài)鏈接庫,VC數(shù)據(jù)庫編程,多線程編程,串口通信編程以及Windows 網(wǎng)絡(luò)編程等內(nèi)容。書中對(duì)開發(fā)過程中的一些開發(fā)技巧進(jìn)行了展示,按照實(shí)際開發(fā)流程對(duì)實(shí)現(xiàn)功能進(jìn)行詳細(xì)講解! ”緯鴥(nèi)容豐富、結(jié)構(gòu)新穎、難度適中、實(shí)用性強(qiáng),可作為普通高等院校Windows程序設(shè)計(jì)課程的教材,也可供Windows開發(fā)初學(xué)人員參考閱讀。
1.技術(shù)內(nèi)容成熟,作者開發(fā)實(shí)力強(qiáng)。2.配有多媒體課件、上機(jī)實(shí)驗(yàn)及書中例子源代碼
目 錄
第1章 Windows程序設(shè)計(jì)基礎(chǔ) 1
1.1 Windows簡介 1
1.1.1 Windows的發(fā)展歷程 1
1.1.2 Windows的特點(diǎn) 3
1.2 操作系統(tǒng)的功能及分類 3
1.2.1 操作系統(tǒng)的功能 3
1.2.2 操作系統(tǒng)的分類 4
1.3 API與MFC 5
1.3.1 API簡介 5
1.3.2 MFC簡介 5
1.4 多任務(wù)的實(shí)現(xiàn) 6
1.4.1 多任務(wù)的概念 6
1.4.2 多任務(wù)的實(shí)現(xiàn) 6 目 錄
第1章 Windows程序設(shè)計(jì)基礎(chǔ) 1
1.1 Windows簡介 1
1.1.1 Windows的發(fā)展歷程 1
1.1.2 Windows的特點(diǎn) 3
1.2 操作系統(tǒng)的功能及分類 3
1.2.1 操作系統(tǒng)的功能 3
1.2.2 操作系統(tǒng)的分類 4
1.3 API與MFC 5
1.3.1 API簡介 5
1.3.2 MFC簡介 5
1.4 多任務(wù)的實(shí)現(xiàn) 6
1.4.1 多任務(wù)的概念 6
1.4.2 多任務(wù)的實(shí)現(xiàn) 6
1.5 虛擬內(nèi)存及其管理 7
1.5.1 虛擬內(nèi)存 7
1.5.2 虛擬內(nèi)存管理 8
小結(jié) 8
習(xí)題 8
第2章 Windows編程概述 9
2.1 Windows的界面組成 9
2.2 Windows應(yīng)用程序的數(shù)據(jù)類型 11
2.2.1 基本數(shù)據(jù)類型 11
2.2.2 特殊數(shù)據(jù)類型 11
2.3 Windows應(yīng)用程序結(jié)構(gòu) 12
2.3.1 WinMain函數(shù) 12
2.3.2 WndProc窗口函數(shù) 15
2.4 Windows編程實(shí)例 16
小結(jié) 21
習(xí)題 21
上機(jī)指導(dǎo) 21
實(shí)驗(yàn)一:熟悉Visual C++集成開發(fā)環(huán)境 21
實(shí)驗(yàn)二:創(chuàng)建一個(gè)Win32應(yīng)用程序(1) 22
實(shí)驗(yàn)三:創(chuàng)建一個(gè)Win32應(yīng)用程序(2) 22
第3章 Windows應(yīng)用程序的面向?qū)ο蟆?4
3.1 應(yīng)用程序主函數(shù)中類的封裝 24
3.1.1 窗口類的聲明 24
3.1.2 應(yīng)用程序類的聲明 26
3.1.3 主函數(shù)封裝后的程序 27
3.2 派生類 31
3.2.1 應(yīng)用程序類的派生類 31
3.2.2 窗口類的派生類 33
小結(jié) 37
習(xí)題 37
上機(jī)指導(dǎo) 37
實(shí)驗(yàn)一:聲明窗口類實(shí)例 37
實(shí)驗(yàn)二:聲明應(yīng)用程序類的派生類 38
實(shí)驗(yàn)三:創(chuàng)建一個(gè)完整程序 38
第4章 MFC應(yīng)用程序框架 39
4.1 應(yīng)用程序向?qū)ppWizard 39
4.1.1 創(chuàng)建應(yīng)用程序框架 39
4.1.2 編譯運(yùn)行應(yīng)用程序 43
4.1.3 查看生成文件信息 43
4.2 使用項(xiàng)目工作區(qū) 45
4.3 MFC應(yīng)用程序的基本類 46
4.3.1 CObject類 46
4.3.2 窗口、對(duì)話框、控件類 46
小結(jié) 49
習(xí)題 49
上機(jī)指導(dǎo) 49
實(shí)驗(yàn)一:創(chuàng)建基于單文檔的應(yīng)用程序TestOne 49
實(shí)驗(yàn)二:創(chuàng)建基于對(duì)話框的應(yīng)用程序TestTwo 50
實(shí)驗(yàn)三:設(shè)計(jì)對(duì)話框資源TestThree 50
第5章 Windows繪圖程序設(shè)計(jì) 51
5.1 圖形設(shè)備接口 51
5.2 設(shè)備上下文 51
5.2.1 設(shè)備上下文介紹 51
5.2.2 設(shè)備上下文類型 53
5.2.3 設(shè)備上下文MFC類 53
5.2.4 設(shè)備上下文操作 59
5.3 GDI對(duì)象 60
5.4 繪圖函數(shù) 60
5.4.1 點(diǎn)線函數(shù) 60
5.4.2 形狀函數(shù) 63
5.4.3 填充函數(shù) 66
5.4.4 位圖函數(shù) 68
5.5 畫筆與畫刷 71
5.5.1 使用庫存畫筆與畫刷 71
5.5.2 自定義畫筆 73
5.5.3 自定義畫刷 75
小結(jié) 78
習(xí)題 78
上機(jī)指導(dǎo) 79
實(shí)驗(yàn)一:繪制一個(gè)矩形 79
實(shí)驗(yàn)二:填充矩形 79
實(shí)驗(yàn)三:與鼠標(biāo)相關(guān)的圖形 80
第6章 文本和字體 81
6.1 文本函數(shù) 81
6.1.1 使用TextOut顯示文本 81
6.1.2 使用DrawText顯示指定格式文本 82
6.1.3 使用ExtTextOut顯示字符串 84
6.1.4 使用TabbedTextOut顯示字符串 85
6.2 文本屬性 86
6.2.1 對(duì)齊方式 86
6.2.2 字符間距 88
6.2.3 背景模式 89
6.2.4 文本顏色 90
6.2.5 背景顏色 91
6.2.6 字符屬性 92
6.3 字體 94
6.3.1 使用庫存字體 94
6.3.2 使用CreateFont創(chuàng)建字體 95
6.3.3 使用CreateFontIndirect創(chuàng)建字體 97
小結(jié) 99
習(xí)題 99
上機(jī)指導(dǎo) 99
實(shí)驗(yàn)一:輸出顏色為紅色的字體 99
實(shí)驗(yàn)二:使用庫存字體輸出文本,并測試字體的寬度和高度 100
實(shí)驗(yàn)三:使用自定義字體 101
第7章 消息 102
7.1 Windows消息 102
7.1.1 消息結(jié)構(gòu) 102
7.1.2 消息分類 103
7.2 消息的傳輸 104
7.2.1 消息的寄送 104
7.2.2 消息的發(fā)送 105
7.3 消息處理 105
7.3.1 消息響應(yīng) 105
7.3.2 消息映射 106
7.3.3 消息響應(yīng)函數(shù) 106
7.3.4 添加消息響應(yīng)函數(shù) 107
7.4 自定義消息 111
7.4.1 自定義消息的基本步驟 111
7.4.2 自定義消息應(yīng)用 112
小結(jié) 115
習(xí)題 115
上機(jī)指導(dǎo) 116
實(shí)驗(yàn)一:查看消息映射 116
實(shí)驗(yàn)二:添加消息響應(yīng)函數(shù) 116
實(shí)驗(yàn)三:添加自定義消息 116
第8章 菜單、鍵盤和鼠標(biāo) 118
8.1 菜單 118
8.1.1 菜單基本知識(shí) 118
8.1.2 創(chuàng)建下拉式菜單 119
8.1.3 添加消息響應(yīng)函數(shù) 122
8.1.4 彈出式菜單 124
8.2 鍵盤 126
8.2.1 鍵盤的虛擬碼 126
8.2.2 鍵盤響應(yīng) 126
8.3 鼠標(biāo) 129
8.3.1 鼠標(biāo)消息 129
8.3.2 鼠標(biāo)響應(yīng) 130
8.3.3 鼠標(biāo)光標(biāo) 133
8.3.4 鼠標(biāo)鍵盤 134
小結(jié) 138
習(xí)題 138
上機(jī)指導(dǎo) 138
實(shí)驗(yàn)一:創(chuàng)建下拉式菜單 138
實(shí)驗(yàn)二:識(shí)別鍵盤按鍵 139
實(shí)驗(yàn)三:鍵盤與鼠標(biāo)的結(jié)合 139
第9章 子窗體控件 140
9.1 Windows標(biāo)準(zhǔn)控件 140
9.1.1 控件概述 140
9.1.2 窗口類CWnd 141
9.2 創(chuàng)建控件 143
9.2.1 靜態(tài)創(chuàng)建控件 144
9.2.2 動(dòng)態(tài)創(chuàng)建控件 146
9.3 按鈕控件 149
9.3.1 單選按鈕 149
9.3.2 復(fù)選框 151
9.4 編輯控件 153
9.5 樹形控件 153
9.5.1 樹形控件概述 153
9.5.2 樹形控件的使用 155
小結(jié) 156
習(xí)題 157
上機(jī)指導(dǎo) 157
實(shí)驗(yàn)一:熟悉標(biāo)準(zhǔn)控件 157
實(shí)驗(yàn)二:使用樹形控件 157
實(shí)驗(yàn)三:列表控件 157
第10章 對(duì)話框 158
10.1 對(duì)話框的基礎(chǔ)知識(shí) 158
10.1.1 對(duì)話框概述 158
10.1.2 對(duì)話框分類 159
10.2 消息對(duì)話框 160
10.2.1 消息對(duì)話框概述 160
10.2.2 消息對(duì)話框樣式 160
10.2.3 消息對(duì)話框的返回值 161
10.3 模態(tài)對(duì)話框 162
10.3.1 創(chuàng)建模態(tài)對(duì)話框 162
10.3.2 創(chuàng)建對(duì)話框類 163
10.3.3 添加程序代碼 166
10.3.4 模態(tài)對(duì)話框消息循環(huán) 170
10.3.5 模態(tài)的終結(jié) 172
10.4 非模態(tài)對(duì)話框 174
10.4.1 創(chuàng)建非模態(tài)對(duì)話框 174
10.4.2 創(chuàng)建過程分析 175
10.5 通用對(duì)話框 176
10.5.1 顏色通用對(duì)話框 176
10.5.2 字體通用對(duì)話框 177
10.5.3 定制打開文件通用對(duì)話框 178
10.5.4 查找和替換通用對(duì)話框 179
10.5.5 打印通用對(duì)話框 180
小結(jié) 181
習(xí)題 181
上機(jī)指導(dǎo) 181
實(shí)驗(yàn)一:熟悉消息對(duì)話框 181
實(shí)驗(yàn)二:加法運(yùn)算 182
實(shí)驗(yàn)三:創(chuàng)建非模態(tài)對(duì)話框 182
第11章 文檔/視圖界面 183
11.1 基本概念 183
11.1.1 概述 183
11.1.2 單文檔界面(SDI)應(yīng)用程序 184
11.1.3 多文檔界面(MDI)應(yīng)用程序 184
11.2 單文檔和多文檔界面應(yīng)用程序的實(shí)現(xiàn) 185
11.2.1 利用AppWizard創(chuàng)建單文檔界面應(yīng)用程序框架 185
11.2.2 程序框架中的主要類及相互關(guān)系 188
11.2.3 文檔類、視圖類核心函數(shù)及作用 190
11.2.4 新建、保存和打開的實(shí)現(xiàn) 191
11.2.5 多文檔界面應(yīng)用程序框架 192
11.3 窗口分割與多視 194
11.3.1 窗口分割基礎(chǔ)知識(shí) 194
11.3.2 Create——?jiǎng)?chuàng)建分割窗口 195
11.3.3 CreateStatic——?jiǎng)?chuàng)建靜態(tài)分割窗口 196
11.3.4 CreateView——?jiǎng)?chuàng)建窗格 197
11.3.5 SetRowInfo和SetColumnInfo——設(shè)置窗格信息 197
11.3.6 OnDrawSplitter——繪制分割窗口特征 198
11.3.7 OnInvertTracker——繪制分割條 199
小結(jié) 200
習(xí)題 200
上機(jī)指導(dǎo) 201
實(shí)驗(yàn)一:熟悉單文檔界面應(yīng)用程序 201
實(shí)驗(yàn)二:動(dòng)態(tài)分割窗口 201
實(shí)驗(yàn)三:靜態(tài)分割窗口 201
第12章 MFC動(dòng)態(tài)鏈接庫 202
12.1 DLL基本理論 202
12.1.1 DLL基本概念 202
12.1.2 DLL的分類 203
12.1.3 DLL的工作原理 203
12.2 簡單DLL示例 204
12.2.1 一個(gè)簡單的DLL 204
12.2.2 導(dǎo)出函數(shù) 206
12.2.3 導(dǎo)入函數(shù) 207
12.3 訪問動(dòng)態(tài)鏈接庫 208
12.3.1 隱式鏈接 208
12.3.2 顯式鏈接 208
12.4 常規(guī)DLL 210
12.4.1 靜態(tài)鏈接到MFC的常規(guī)DLL 210
12.4.2 動(dòng)態(tài)鏈接到MFC的常規(guī)DLL 213
12.4.3 DLL的鏈接使用 215
12.5 擴(kuò)展DLL 217
12.5.1 生成DLL 217
12.5.2 鏈接DLL 219
小結(jié) 220
習(xí)題 220
上機(jī)指導(dǎo) 220
實(shí)驗(yàn)一:創(chuàng)建一個(gè)簡單的DLL 220
實(shí)驗(yàn)二:顯式鏈接 220
第13章 VC數(shù)據(jù)庫編程 221
13.1 數(shù)據(jù)庫基礎(chǔ) 221
13.1.1 數(shù)據(jù)庫的基本概念 221
13.1.2 數(shù)據(jù)庫管理系統(tǒng)(DBMS) 222
13.1.3 結(jié)構(gòu)化查詢語言(SQL) 222
13.2 數(shù)據(jù)庫開發(fā)技術(shù)簡介 225
13.2.1 ODBC API/MFC ODBC技術(shù) 225
13.2.2 DAO技術(shù) 226
13.2.3 ADO技術(shù) 226
13.3 在Visual C++中使用ADO 開發(fā)數(shù)據(jù)庫應(yīng)用程序 228
13.3.1 Viusal C++對(duì)ADO的支持 228
13.3.2 創(chuàng)建數(shù)據(jù)庫與實(shí)例工程 229
13.3.3 引入ADO對(duì)象 232
13.3.4 連接數(shù)據(jù)源 232
13.3.5 開發(fā)技術(shù)——連接對(duì)象(Connection) 233
13.3.6 創(chuàng)建表并添加數(shù)據(jù) 235
13.3.7 開發(fā)技術(shù)——ADO對(duì)象命令的執(zhí)行 236
13.3.8 開發(fā)技術(shù)——Recordset對(duì)象 237
13.3.9 遍歷、刪除、編輯記錄的實(shí)現(xiàn) 243
13.4 使用ODBC數(shù)據(jù)源連接數(shù)據(jù)庫 247
13.4.1 手動(dòng)實(shí)現(xiàn)設(shè)置ODBC數(shù)據(jù)源 247
13.4.2 ADO連接ODBC數(shù)據(jù)源 249
13.4.3 Visual C++程序?qū)崿F(xiàn)設(shè)置ODBC數(shù)據(jù)源 249
13.4.4 使用Visual C++程序設(shè)置ODBC數(shù)據(jù)源實(shí)例 250
小結(jié) 251
習(xí)題 251
上機(jī)指導(dǎo) 251
實(shí)驗(yàn)一:登錄對(duì)話框 251
實(shí)驗(yàn)二:手動(dòng)設(shè)置ODBC數(shù)據(jù)源 252
實(shí)驗(yàn)三:修改記錄 252
第14章 多線程 253
14.1 多線程基礎(chǔ) 253
14.1.1 進(jìn)程與線程 253
14.1.2 線程分類 254
14.2 多線程編程 254
14.2.1 Win32 API線程處理 254
14.2.2 工作者線程 255
14.2.3 用戶界面線程 257
14.3 線程的終止 259
14.3.1 線程的正常終止 259
14.3.2 線程的異常終止 260
14.4 線程的優(yōu)先級(jí)與管理 260
14.4.1 線程的優(yōu)先級(jí) 260
14.4.2 線程的優(yōu)先級(jí)管理 262
14.4.3 線程的調(diào)度 263
14.5 線程之間的通信 264
14.5.1 通信機(jī)制 264
14.5.2 工作者線程通信 264
14.5.3 用戶界面線程通信 266
14.6 線程的同步 269
14.6.1 同步對(duì)象 269
14.6.2 使用事件對(duì)象 271
14.6.3 使用互斥對(duì)象 273
14.6.4 使用臨界區(qū)對(duì)象 274
14.6.5 使用信號(hào)量對(duì)象 275
小結(jié) 277
習(xí)題 278
上機(jī)指導(dǎo) 278
實(shí)驗(yàn)一:工作者線程的設(shè)計(jì)和實(shí)現(xiàn) 278
實(shí)驗(yàn)二:線程同步對(duì)象使用 279
實(shí)驗(yàn)三:線程間自定義消息方式通信的設(shè)計(jì)與實(shí)現(xiàn) 279
第15章 串行通信原理與設(shè)計(jì) 281
15.1 串行通信的基本概念 281
15.1.1 串行通信的特點(diǎn) 281
15.1.2 串行通信的傳輸方式 282
15.1.3 數(shù)據(jù)糾錯(cuò)與檢錯(cuò) 282
15.1.4 傳輸速率與距離 283
15.2 串行傳輸協(xié)議 283
15.2.1 異步傳輸協(xié)議 284
15.2.2 面向字符的同步傳輸協(xié)議 285
15.2.3 面向比特的同步傳輸協(xié)議 286
15.3 使用Windows API進(jìn)行同步串口編程 288
15.3.1 概述 288
15.3.2 創(chuàng)建串口 288
15.3.3 關(guān)閉串口 293
15.3.4 發(fā)送數(shù)據(jù) 293
15.3.5 接收數(shù)據(jù) 294
15.3.6 定時(shí)接收數(shù)據(jù)的方法 294
15.4 采用重疊I/O方式的編程方法 295
15.4.1 定義全局變量 295
15.4.2 創(chuàng)建串口 296
15.4.3 發(fā)出讀寫操作 296
15.4.4 讀寫線程函數(shù)的建立 297
15.4.5 關(guān)閉串口 301
15.5 采用事件驅(qū)動(dòng)方式的編程方法 301
15.5.1 定義全局變量 301
15.5.2 打開串口及開啟事件線程 302
15.5.3 發(fā)送數(shù)據(jù) 304
15.5.4 自定義消息函數(shù)讀取數(shù)據(jù) 305
15.5.5 關(guān)閉串口及關(guān)閉事件線程 307
小結(jié) 307
習(xí)題 308
上機(jī)實(shí)驗(yàn) 308
實(shí)驗(yàn)一:同步串口編程 308
實(shí)驗(yàn)二:重疊方式的串口編程 309
實(shí)驗(yàn)三:事件驅(qū)動(dòng)方式的串口編程 309
第16章 Windows網(wǎng)絡(luò)編程基礎(chǔ) 311
16.1 網(wǎng)絡(luò)基礎(chǔ)知識(shí) 311
16.1.1 OSI七層網(wǎng)絡(luò)模型 311
16.1.2 TCP/IP協(xié)議 312
16.1.3 C/S編程模型 313
16.2 網(wǎng)絡(luò)編程基礎(chǔ) 313
16.2.1 Sockets套接字 314
16.2.2 網(wǎng)絡(luò)字節(jié)順序 314
16.3 Windows Sockets介紹 314
16.3.1 CAsyncSocket類 314
16.3.2 CSocket類 314
16.4 網(wǎng)絡(luò)程序?qū)嵗龖?yīng)用 315
16.4.1 Winsock編程流程 315
16.4.2 TCP客戶端程序 318
16.4.3 TCP服務(wù)器程序 326
小結(jié) 331
習(xí)題 331
上機(jī)指導(dǎo) 332
實(shí)驗(yàn)一:設(shè)計(jì)客戶端和服務(wù)器端的界面 332
實(shí)驗(yàn)二:初始化客戶端和服務(wù)器端 332
實(shí)驗(yàn)三:信息的發(fā)送和接收 333