第1篇編程基礎第1章開發環境 2
1.1工程創建 3
?實例001如何創建基于對話框的MFC工程 3
實例002如何創建基于文檔視圖的MFC工程 5
實例003打開已存在的工程 8
實例004如何查找工程中的信息 9
實例005如何在添加對話框資源時創建
對話框類 10
實例006在工作區中管理多個工程 11
實例007創建MFCActiveX工程 12
實例008創建ATL工程 14
實例009創建控制臺應用程序 14
1.2開發環境的設置與使用 15
?實例010如何定制自己的工具欄 15
實例011在VisualC++項目中使用自定義資源 17
實例012向VisualC++開發環境中添加插件 18
實例013添加消息處理函數 19
?實例014設置開發環境文本顏色 20
實例015設置批量注釋 21
?實例016如何對齊零亂的代碼 23
實例017判斷代碼中的括號是否匹配 24
實例018修改可執行文件中的資源 25
1.3程序調試 26
實例019創建調試程序 26
實例020在Release版本中進行調試 27
實例021在VisualC++中如何進行遠程調試 28
實例022利用簡單斷點進行程序調試 28
實例023利用條件斷點進行程序調試 29
實例024利用數據斷點進行程序調試 30
實例025利用消息斷點進行程序調試 32
實例026利用Watch窗口查看對象信息 32
實例027利用CallStack窗口查看函數調用
信息 33
實例028利用Memory窗口查看內存信息 34
實例029利用Variables窗口查看變量信息 36
實例030利用Registers窗口查看CPU寄存器
信息 37
實例031利用Disassembly窗口查看匯編信息 37
第2章語言基礎 39
2.1基本語法 40
?實例032輸出問候語 40
?實例033輸出帶邊框的問候語 40
實例034不同類型數據的輸出 41
?實例035輸出字符表情 43
?實例036獲取用戶輸入的用戶名 44
2.2運算符的妙用 45
實例037簡單的字符加密 45
實例038實現兩個變量的互換 46
實例039判斷性別 48
實例040用宏定義實現值互換 49
實例041簡單的位運算 50
實例042整數加減法練習 52
2.3條件語句 53
實例043李白喝酒問題 53
實例044桃園三結義 54
實例045何年是閏年 56
實例046小球稱重 57
實例047購物街中的商品價格競猜 58
實例048促銷商品的折扣計算 60
實例049利用switch語句輸出倒三角形 62
2.4循環語句 63
實例050PK少年高斯 63
實例051燈塔數量 64
實例052上帝創世的秘密 65
實例053小球下落 67
實例054再現乘法口訣表 68
實例055判斷名次 69
2.5循環的數學應用 70
實例056序列求和 70
實例057簡單的級數運算 71
實例058求一個正整數的所有因子 72
實例059一元錢兌換方案 73
2.6趣味計算 74
實例060加油站加油 74
實例061買蘋果問題 76
實例062猴子吃桃 77
實例063老師分糖果 78
實例064新同學的年齡 79
實例065百錢買百雞問題 80
實例066彩球問題 81
實例067集郵冊中的郵票數量 82
2.7多重循環打印圖形 83
實例068用“#”打印三角形 83
實例069用“*”打印圖形 85
實例070繪制余弦曲線 86
實例071打印楊輝三角 87
2.8算法 88
實例072計算某日是該年第幾天 88
實例073斐波那契數列 90
實例074角谷猜想 91
實例075哥德巴赫猜想 92
實例076四方定理 93
實例077尼科徹斯定理 94
實例078魔術師的秘密 95
第3章數據結構 97
3.1結構體 98
實例079結構體類型的定義 98
實例080結構體變量的初始化 99
實例081如何使用嵌套結構 100
實例082將結構作為參數傳遞并返回 101
實例083共用體數據類型的定義 102
實例084共用體變量的初始化 103
實例085如何使用匿名共用體 104
實例086枚舉類型的定義與使用 105
實例087用new動態創建結構體 106
實例088使用結構體標識操作員名稱、
密碼和級別 107
實例089創建包括12個月份的枚舉類型 109
實例090帶有函數的結構體 109
3.2指針、地址與引用 111
?實例091使用指針自增操作輸出數組元素 111
?實例092利用指針表達式操作遍歷數組 112
?實例093數組地址的表示方法 113
?實例094指針和數組的常用方法 114
實例095結構指針遍歷結構數組 115
實例096指針作為函數的參數 116
實例097多維數組的指針參數 117
實例098指針作為函數的返回值 118
實例099使用函數指針制作菜單管理器 119
實例100使用指針實現數據交換 121
實例101使用指針實現整數排序 122
實例102指向結構體變量的指針 123
實例103用指針實現逆序存放數組元素值 124
實例104輸出二維數組的有關值 125
實例105輸出二維數組任一行任一列值 126
實例106使用指針查找數列中的最大值和最小值 127
實例107用指針數組構造字符串數組 129
實例108將若干字符串按照字母順序輸出 130
實例109用指向函數的指針比較大小 131
實例110用指針函數實現求學生成績 132
實例111使用指針的指針輸出字符串 133
實例112實現輸入月份號輸出該月份英文名 134
實例113使用指向指針的指針對字符串排序 135
實例114分解字符串中的單詞 136
3.3數組 138
實例115向數組中賦值 138
實例116遍歷數組 139
實例117求數組中元素的平均和 140
實例118數組的排序 141
實例119向數組中插入元素 142
實例120數組的刪除操作 144
實例121數組冒泡排序法 145
實例122順序查找數組中指定的元素 146
實例123有序數組折半查找 147
實例124計算字符串中有多少個單詞 149
實例125獲取數組中元素的個數 150
實例126輸出數組元素 151
實例127將二維數組行列對換 152
實例128將二維數組轉換為一維數組 153
實例129使用指針變量遍歷二維數組 154
實例130學生成績排名 155
實例131求矩陣對角線之和 156
實例132反向輸出字符串 157
實例133使用數組保存學生姓名 158
實例134數組中連續相等數的計數 158
實例135兩個數組元素的交換 159
實例136二維數組每行的最大值 161
實例137二維數組行和列的最小值 162
實例138二維數組行最大值中的最小值 163
實例139刪除數組中重復的連續元素 164
實例140刪除有序數組中的重復元素 165
實例141數組合并 166
實例142利用數組計算平均成績 167
實例143數組中整數的判斷 168
實例144判斷二維數組中是否有相同的元素 168
實例145計算兩個矩陣和 169
實例146判斷回文數 171
實例147統計學生成績分布 171
第4章字符串和函數 173
4.1字符串的截取與轉換 174
?實例148獲取字符串中的漢字 174
?實例149英文字符串首字母大寫 175
?實例150指定符號分割字符串 176
?實例151在文本中刪除指定的漢字或句子 177
實例152替換指定的字符串 178
實例153向字符串中添加子字符串 179
實例154截取字符串中的數字 180
實例155將選定字符轉換成大寫 181
實例156將選定字符轉換成小寫 182
實例157截取指定位置的字符串 183
4.2字符串的比較與判斷 184
實例158獲取指定位置字符的大小寫 184
實例159獲取字符串中的英文子字符串 185
實例160判斷字符串中是否有中文 187
實例161判斷字符串是否可以轉換成整數 188
實例162判斷字符串是否含有數字 189
實例163判斷字符串中是否有指定的字符 189
實例164字符串比較 190
實例165忽略大小寫字符串比較 191
4.3字符串技巧 192
實例166字符串加密 192
實例167字符串連接 193
實例168給選中字符添加雙引號 194
實例169字符串反轉 195
實例170去除首尾多余空格 196
實例171向編輯框中追加字符 197
4.4字符串應用 198
實例172將選定內容復制到剪貼板 198
實例173在ListBox中查找字符串 199
實例174統計編輯框中回車個數 200
實例175在字符串數組中搜索 201
實例176獲取字符在字符串中出現的位置 202
實例177獲取字符在字符串中出現的次數 204
實例178獲取指定字符的起始位置 205
實例179獲取字符串內中、英文字符個數 206
4.5字符串統計 207
實例180統計中文個數 207
實例181獲取字符串中數字位置 208
實例182獲取字符在字符串中最后出現的
位置 209
實例183獲取大寫字符的位置 210
實例184獲取小寫字符的位置 211
實例185統計字符個數 212
4.6函數 213
實例186函數默認參數的使用 213
實例187通過函數的重載實現不同數據
類型的操作 214
實例188通過函數模板返回最小值 216
實例189使用函數模板進行排序 217
實例190統計學生成績的最高分、最低分和
平均分 218
實例191在指定目錄下查找文件 220
實例192列舉系統盤符 222
實例193遍歷磁盤目錄 223
實例194按樹結構輸出區域信息 224
實例195分解路徑和名稱 226
實例196數值與字符串類型的轉換 227
實例197使用遞歸過程實現階乘運算 228
實例198隨機獲取姓名 229
實例199判斷指定月份屬于哪個季節 231
實例200判斷閏年 232
實例201將兩個實型數據轉換為字符串并連接 233
實例202分解字符串中的單詞 234
實例203不使用庫函數復制字符串 235
第5章類和對象 236
5.1類與對象的使用 237
?實例204自定義圖書類 237
?實例205溫度單位轉換工具 238
實例206編寫同名的方法 239
實例207構造方法的應用 240
?實例208祖先的止癢藥方 241
?實例209統計圖書的銷售量 243
實例210單例模式的應用 244
實例211員工間的差異 245
實例212重寫父類中的方法 247
實例213計算幾何圖形的面積 248
實例214簡單的汽車銷售商場 249
實例215利用拷貝構造函數簡化實例創建 251
實例216訪問類中私有成員的函數 252
實例217實現類的加法運算 253
實例218在類中實現事件 254
實例219命名空間的使用 255
實例220模板的實現 257
實例221const函數的使用 258
實例222使用純虛函數代替接口 259
實例223定義嵌套類 260
實例224策略模式的簡單應用 261
實例225適配器模式的簡單應用 263
5.2STL應用 264
實例226vector模板類的應用 264
實例227鏈表類模板的應用 266
實例228通過指定的字符在集合中查找元素 267
實例229對集合進行比較 268
實例230應用adjacent_find算法搜索相鄰的
重復元素 269
實例231應用count算法計算相同元素的個數 270
實例232應用random_shuffle算法將元素順序
隨機打亂 271
實例233迭代器的用法 272
實例234用向量改進內存的再分配 273
第2篇界面設計
第6章窗體界面 276
6.1對話框的調用 277
實例235模式對話框與非模式對話框的使用 277
實例236API調用對話框資源 278
實例237如何在主窗體框架顯示前彈出登錄框 281
實例238在對話框中使用CDialogBar 282
6.2常用的對話框 284
實例239“查找/替換”對話框 284
實例240“打開”對話框 286
實例241可以顯示圖片預覽的“打開”對話框 287
實例242“另存為”對話框 290
實例243新型打開對話框 291
6.3對話框的顯示 292
實例244Animate動畫顯示窗體 292
實例245百葉窗顯示窗體 294
實例246淡入淡出顯示窗體 295
實例247半透明顯示窗體 296
實例248制作立體窗口陰影效果 298
6.4對話框的背景 299
?實例249應用程序背景與桌面融合 299
?實例250位圖背景窗體 300
實例251漸變色背景窗體 302
?實例252隨機更換背景的窗體 303
實例253使用畫刷繪制背景顏色 304
6.5對話框的形狀控制 305
?實例254橢圓形窗體 305
實例255圓角窗體 306
實例256字形窗體 307
實例257調用Office助手 309
實例258鼠標跟隨窗體 310
實例259根據圖片大小顯示的窗體 312
6.6對話框的位置控制 313
實例260始終在最上面的窗體 313
實例261如QQ般隱藏的窗體 314
實例262晃動的窗體 315
實例263磁性窗體 316
6.7控制對話框的標題欄 318
實例264閃爍標題欄的窗體 318
實例265隱藏和顯示標題欄 319
實例266動態改變標題欄圖標 320
6.8對話框的大小控制 321
實例267限制窗體的大小 321
實例268控制窗體的最大化和最小化 322
實例269限制對話框最大時的窗口大小 323
6.9對話框的窗體消息響應及控制 324
實例270關閉窗體前彈出確認對話框 324
實例271讓窗體的標題欄不響應鼠標雙擊
事件 325
實例272無標題對話框的拖動方法 326
實例273灰度“最大化”、“最小化”
與“關閉”按鈕 328
6.10對話框的資源共享 330
實例274支持多國語言切換的應用程序 330
實例275如何實現窗體繼承 332
實例276換膚窗體 333
實例277自繪對話框 335
6.11文檔視圖窗體的使用 337
實例278MDI啟動時無子窗口 337
實例279MDI啟動時子窗口最大化 338
實例280MDI主窗口最大化顯示 339
實例281全屏顯示的窗體 340
實例282創建帶滾動條的窗體 341
實例283窗體拆分 342
實例284始終置頂的SDI程序 343
實例285不可移動的窗體 344
實例286創建不可改變大小的窗體 345
實例287動態創建視圖窗口 345
實例288在視圖窗口中顯示網頁 347
第7章MFC控件 350
7.1靜態文本控件 351
?實例289文本背景的透明處理 351
實例290具有分隔條的靜態文本控件 352
實例291設計群組控件 354
實例292電子時鐘 355
?實例293模擬超鏈接效果 357
實例294使用靜態文本控件數組設計簡易
拼圖 359
7.2編輯框控件 360
?實例295多行文本編輯器 360
實例296輸入時顯示選擇列表 362
實例297七彩編輯框效果 363
實例298如同畫中題字 364
實例299金額編輯框 365
實例300密碼安全編輯框 367
實例301個性字體展示 368
實例302在編輯框中插入圖片數據 370
實例303RTF文件讀取器 372
實例304在編輯框中顯示表情動畫 375
7.3按鈕控件 378
實例305位圖和圖標按鈕 378
實例306問卷調查的程序實現 379
實例307熱點效果的圖像切換 380
實例308實現圖文并茂的效果 381
實例309按鈕七巧板 384
實例310動畫按鈕 386
7.4組合框控件 388
實例311向組合框中插入數據 388
實例312輸入數據時的輔助提示 389
實例313列表寬度的自動調節 390
實例314顏色組合框 392
實例315枚舉系統盤符 394
?實例316QQ登錄式的用戶選擇列表 395
7.5列表框控件 396
實例317禁止列表框信息重復 396
實例318在兩個列表框間實現數據交換 398
實例319上下移動列表項的位置 399
實例320實現標簽式選擇 400
實例321要提示才能看得見 401
實例322水平方向的延伸 402
實例323為列表框換裝 403
7.6滾動條控件 405
實例324使用滾動條顯示大幅位圖 405
實例325滾動條的新裝 407
7.7進度條控件 408
實例326顏色變了 408
實例327進度條的百分比顯示 409
7.8滑標控件 411
實例328程序中的調色板 411
實例329繪制滑標控件 412
7.9列表視圖控件 414
實例330頭像選擇形式的登錄窗體 414
實例331以報表顯示圖書信息 416
實例332實現報表數據的排序 417
實例333在列表中編輯文本 419
實例334QQ抽屜控件 420
7.10樹視圖控件 422
實例335以樹狀結構顯示城市信息 422
實例336節點可編輯 423
實例337分層顯示數據 424
實例338使樹視圖控件具有復選功能 426
實例339樹控件的背景設計 427
實例340顯示磁盤目錄 428
7.11標簽控件 429
實例341界面的分頁顯示 429
實例342標簽中的圖標設置 431
7.12時間控件 432
實例343迷你星座查詢器 432
實例344設置系統時間 434
7.13月歷控件 435
實例345時間和月歷的同步 435
實例346實現紀念日提醒 437
7.14其他控件 438
實例347對數字進行微調 438
實例348使用熱鍵控件 439
實例349獲得本機的IP地址 440
第8章菜單 442
8.1菜單創建 443
?實例350根據表中數據動態生成菜單 443
實例351創建級聯菜單 444
實例352帶歷史信息的菜單 445
實例353繪制漸變效果的菜單 446
實例354帶圖標的程序菜單 447
實例355根據INI文件創建菜單 449
實例356根據XML文件創建菜單 450
8.2設置菜單屬性 451
?實例357為菜單添加核對標記 451
實例358為菜單添加快捷鍵 452
實例359設置菜單是否可用 453
實例360將菜單項的字體設置為粗體 454
?實例361多國語言菜單 455
實例362可以下拉的菜單 456
實例363左側引航條菜單 457
?實例364右對齊菜單 458
8.3菜單位置控制 459
實例365鼠標右鍵彈出菜單 459
實例366浮動的菜單 461
實例367更新系統菜單 462
實例368任務欄托盤彈出菜單 462
實例369單文檔右鍵菜單 464
8.4控件菜單 465
實例370工具欄下拉菜單 465
實例371編輯框右鍵菜單 466
?實例372列表控件右鍵菜單 467
實例373工具欄右鍵菜單 468
第9章工具欄和狀態欄 469
9.1工具欄創建 470
9.2工具欄控制 477
9.3增強工具欄 485
9.4狀態欄 491
第3篇應用程序控制
第10章Word文檔操作 500
10.1Word文檔的基本操作 501
10.2Word文檔統計 508
10.3Word文檔的內容轉換 513
10.4Word文檔的圖形與陰影操作 517
10.5Word文檔的插入與導出操作 526
第11章Excel表格操作 545
11.1Excel表格的基本操作 546
11.2Excel表格與外部數據 554
11.3Excel表格的設置 564
第4篇圖形圖像
第12章圖形繪制 580
12.1特殊曲線 581
12.2圖形基礎 597
12.3分形 620
第13章圖像特效 623
13.1圖像濾鏡 624
13.2圖像繪制 632
13.3圖像色彩轉換 637
13.4圖像邊緣提取 642
13.5字體特效 648
第14章圖像控制 657
14.1圖像縮放 658
14.2圖像剪切 665
14.3圖像轉動 672
14.4圖像融合 676
14.5圖像查看 685
14.6圖像格式轉換 707
第15章多媒體 736
15.1多媒體控制 737
15.2控件動畫 745
15.3多媒體播放 750
15.4采集、轉換與播放 760
15.5多媒體動畫效果 800
15.6游戲 815