Visual C++課程設計案例精編(第二版)

-
【作 者】嚴華峰 等編著
【I S B N 】978-7-5084-2007-1
【責任編輯】
【適用讀者群】本專通用
【出版時間】2004-02-01
【開 本】16開
【裝幀信息】平裝(光膜)
【版 次】第2版第3次印刷
【頁 數】288
【千字數】398
【印 張】18
【定 價】¥32
【叢 書】21世紀高等院校課程設計叢書
【備注信息】附贈光盤一張。
簡介
本書特色
前言
章節列表
精彩閱讀
下載資源
相關圖書
Visual C++是Microsoft公司開發的可視化開發工具。本書以翔實的內容、精選的案例全面介紹了如何利用Visual C++進行課程設計和軟件制作。
本書介紹了11個課程設計案例,各個案例相對獨立,覆蓋了Windows下編程的大部分內容,包括圖形和圖像、多媒體、Internet網絡、數據庫、程序通信、ActiveX技術等各個方面,深入淺出地說明了Visual C++最典型的和最有用途的程序設計方法,其中很多內容是一般介紹Visual C++基礎編程的書籍沒有涉及到的。本書應用性極強,案例全部可以運行,讀者可以根據這些案例進行研究、修改和擴展,使其符合自己的要求。
本書是Visual C++愛好者學習Visual C++編程課程設計的好幫手和課程資料。同時還是廣大教師、計算機專業編程人員的學習參考書。
為配合讀者使用本書,本書附帶程序源代碼光盤一張。
在學習各種語言的過程中,最好的方法是實踐,只有通過實踐才能真正掌握語言的精髓,從而達到精通。初期的實踐一般是仿照一些實例做上機練習,但一般教科書中實例較少,故有一定基礎的讀者就需要一本純實例豐富的書來供他們參考。這樣的書,市場并不多見,為滿足廣大讀者的需求,我們曾推出了第一版本的萬水課程設計叢書。該套書以實用為原則,一經推出就受到讀者的好評,但在實踐中發現,第一版本內容偏少,實例的代表性還不夠全面,還不能完全滿足讀者的需要。在經過調查研究的基礎上,我們對第一版作了修改和調整,使案例更實用、更具趣味性,使讀者更容易掌握Visual C++,進入編程的角色。
現在雖然Visual C++.Net已經推出,但目前大多數開發人員還在用6.0版本,所以我們并沒有對該書的版本進行升級。
該書第二版的內容包括系統信息獲取、圖形和圖像、多媒體、電子郵件管理、數據庫、程序通信、ActiveX技術等。
本書附帶光盤,讀者根據自己的需要和編程的熟練程度可直接調用所需要的案例練習,從中領會Visual C++的強大功能。
全書案例由淺入深,通過實練,讀者將可領會編程思想、編程方法和技巧。但愿將來在讀者的編程中能有一定的幫助,祝您早日進入藍領編程隊伍。如達此目的,作者已心滿意足矣。
作 者
2003年12月
第一版前言
案例1 獲取系統信息程序的開發 1
1.1 案例功能說明 1
1.2 程序設計思想 1
1.3 程序設計框架和步驟 2
1.4 程序代碼分析 3
1.5 小結 22
案例2 屏幕保護程序的開發 23
2.1 課程設計說明 23
2.2 程序設計思想和功能 23
2.3 程序設計框架和步驟 24
2.4 屏幕保護類CScreenSaverWnd 26
2.5 編輯配置屏幕保護對話框的Windows API函數 28
2.6 程序結構代碼分析 30
2.7 小結 40
案例3 系統進程管理器的開發 41
3.1 案例功能說明 41
3.2 程序設計思想 42
3.3 程序設計框架和步驟 42
3.4 程序代碼分析 43
3.5 小結 46
案例4 多文檔應用程序的開發 47
4.1 案例功能說明 47
4.2 程序設計思想 48
4.3 程序設計框架和步驟 48
4.4 程序代碼編輯與分析 49
4.4.1 類Childview的刪除 49
4.4.2 編輯Raclient.h頭文件和Raclient.cpp代碼文件 49
4.4.3 編輯頭文件MainFrm.h和代碼文件MainFrm.cpp 52
4.4.4 編輯頭文件RaChildFrame.h和代碼文件RaChildFrame.cpp 56
4.4.5 編輯頭文件InputCertView.h和代碼文件InputCertView.cpp 58
4.4.6 編輯頭文件InputInfo.h和代碼文件InputInfo.cpp 62
4.4.7 編輯頭文件AuditingCertView.h和代碼文件AuditingCertView.cpp 64
4.4.8 編輯頭文件ViewInfoDlg.h和代碼文件ViewInfoDlg.cpp 69
4.5 小結 70
案例5 通訊錄程序的開發 72
5.1 案例功能說明 72
5.2 程序設計思想 72
5.3 程序設計步驟 73
5.4 程序代碼分析 78
5.5 小結 85
案例6 電子郵件發送和接收程序的開發 86
第一部分 電子郵件發送程序 86
6.1 案例功能說明 86
6.2 設計思想和功能 87
6.3 程序設計框架和步驟 88
6.4 程序代碼分析 89
6.5 小結 92
第二部分 電子郵件接收程序 92
6.6 案例功能說明 92
6.7 設計思想和功能 93
6.8 程序設計框架和步驟 94
6.9 程序代碼分析 95
6.10 小結 99
案例7 聊天程序 100
第一部分 服務器端聊天程序 100
7.1 案例功能說明 100
7.2 設計思想和功能 101
7.3 程序設計框架和步驟 101
7.4 程序代碼分析 102
7.5 小結 110
第二部分 客戶端聊天程序 110
7.6 案例功能說明 110
7.7 程序設計思想 111
7.8 程序設計框架和步驟 112
7.9 程序代碼分析 113
7.10 小結 121
案例8 MP3播放器的開發 122
8.1 案例說明 122
8.2 案例實現的功能 122
8.3 程序設計思想 123
8.4 程序設計框架和基本步驟 123
8.5 程序代碼分析 127
8.5.1 應用程序界面的生成 127
8.5.2 實現播放器的功能 129
8.5.3 應用程序托盤圖標管理的實現 140
8.5.4 實現超級鏈接 143
8.5.5 在CPlayerDlg中實現超級鏈接功能 155
8.6 小結 155
案例9 視頻操作軟件的開發 156
9.1 案例功能說明 156
9.2 程序設計步驟 156
9.2.1 建立新工程 156
9.2.2 添加VFM靜態庫 157
9.2.3 播放視頻文件的實現 157
9.3 本案例使用的主要技術 159
9.3.1 MCIWnd介紹 159
9.3.2 使用MCIWnd 160
9.3.3 使用MCIWnd窗口播放AVI文件 163
9.4 小結 164
案例10 24點游戲軟件的開發 165
10.1 程序功能設計 165
10.2 程序設計框架和步驟 165
10.2.1 創建應用程序框架 165
10.2.2 創建對話框資源 166
10.2.3 加消息處理函數 167
10.2.4 添加成員函數與成員變量 167
10.3 添加完成各個功能的代碼 168
10.3.1 撲克牌在對話框中的動態顯示 168
10.3.2 如何使計時器正確控制進度條 171
10.3.3 如何操作列表視圖控件 173
10.4 處理游戲流程 178
10.5 小結 181
案例11 畫圖軟件的開發 182
11.1 課程設計的目的和意義 182
11.2 程序功能說明 182
11.3 程序框架設計 184
11.3.1 創建應用程序框架 184
11.3.2 制作菜單 184
11.3.3 制作工具欄 191
11.4 實現繪圖功能 198
11.4.1 圖元數據的定義 198
11.4.2 文檔類 204
11.4.3 視圖類 204
11.5 實現所見即所得繪圖 206
11.5.1 鼠標消息響應函數框架 206
11.5.2 繪制直線 209
11.5.3 繪制矩形 211
11.5.4 繪制橢圓 213
11.5.5 繪制三角形 215
11.5.6 繪制文本 217
11.5.7 填充 219
11.5.8 維護視圖中的圖形 220
11.6 實現圖元選擇功能 223
11.6.1 選擇基本圖元 223
11.6.2 圖元數據的檢查和選中判斷 227
11.6.3 鍵盤消息處理和圖元多選 230
11.7 實現圖元移動功能 230
11.8 實現畫筆和畫刷風格選擇功能 235
11.8.1 制作Painter的對話框工具條 235
11.8.2 添加功能實現代碼 237
11.9 實現圖片的編輯功能 244
11.9.1 拷貝 245
11.9.2 剪切 247
11.9.3 粘貼 249
11.9.4 恢復和撤消 255
11.10 實現圖元修改功能 268
11.11 實現圖形文件存儲功能 276
11.11.1 存儲圖形文件 276
11.11.2 載入圖形文件 278