第1章 窗体与界面设计 1
1.1 菜单应用实例 2
实例001 在系统菜单中添加菜单项 2
实例002 带图标的程序菜单 3
实例003 根据表中数据动态生成菜单 6
实例004 浮动的菜单 7
1.2 弹出菜单应用实例 9
实例005 在控件上单击右键弹出菜单 9
实例006 个性化的弹出菜单 10
实例007 任务栏托盘弹出菜单 12
1.3 工具栏应用实例 14
实例008 带背景的工具栏 14
实例009 带图标的工具栏 15
实例010 带下拉菜单的工具栏 16
实例011 可调整按钮位置的工具栏 18
实例012 XP风格工具栏 19
实例013 动态设置是否显示工具栏按钮文本 20
实例014 具有提示功能的工具栏 22
1.4 状态栏应用实例 23
实例015 带进度条的状态栏 23
实例016 动画效果的状态栏 24
实例017 滚动字幕的状态栏 25
1.5 导航界面应用实例 26
实例018 Outlook导航界面 26
实例019 树状导航界面 29
实例020 按钮导航界面 30
实例021 图片导航界面 32
1.6 界面窗体应用实例 34
实例022 使用位图设计畸形界面 34
实例023 椭圆形的程序界面 35
实例024 自绘窗体界面 36
实例025 以时钟显示界面 41
实例026 窗体融合技术 42
实例027 限制对话框最大时的窗口大小 46
实例028 分割视图窗口 47
实例029 对话框全屏显示 48
1.7 多媒体宣传光盘应用实例 50
实例030 多媒体宣传光盘主界面 50
实例031 自动运行的多媒体宣传光盘 51
1.8 多媒体触摸屏程序应用实例 52
实例032 采购中心多媒体触摸屏程序 52
实例033 为触摸屏程序添加虚拟键盘 54
1.9 窗体位置应用实例 55
实例034 不可移动的窗体 55
实例035 始终在最上面的窗体 55
实例036 以动画形式显示窗体 56
实例037 磁性窗体 58
1.10 窗体标题栏应用实例 59
实例038 闪烁的窗体标题栏 59
实例039 拖动没有标题栏的窗体 60
实例040 禁用标题栏上的最大化、最小化或关闭按钮 60
1.11 窗体形状及应用 62
实例041 半透明窗体 62
实例042 创建字型窗体 63
实例043 设计桌面精灵 64
1.12 通用对话框的应用 67
实例044 打开位图预览对话框 67
实例045 打开Windows新型对话框 69
实例046 同时选择多个文件 70
实例047 文本替换对话框 71
实例048 字体选择对话框 73
第1章 窗体与界面设计 1
1.1 菜单应用实例 2
实例001 在系统菜单中添加菜单项 2
实例002 带图标的程序菜单 3
实例003 根据表中数据动态生成菜单 6
实例004 浮动的菜单 7
1.2 弹出菜单应用实例 9
实例005 在控件上单击右键弹出菜单 9
实例006 个性化的弹出菜单 10
实例007 任务栏托盘弹出菜单 12
1.3 工具栏应用实例 14
实例008 带背景的工具栏 14
实例009 带图标的工具栏 15
实例010 带下拉菜单的工具栏 16
实例011 可调整按钮位置的工具栏 18
实例012 XP风格工具栏 19
实例013 动态设置是否显示工具栏按钮文本 20
实例014 具有提示功能的工具栏 22
1.4 状态栏应用实例 23
实例015 带进度条的状态栏 23
实例016 动画效果的状态栏 24
实例017 滚动字幕的状态栏 25
1.5 导航界面应用实例 26
实例018 Outlook导航界面 26
实例019 树状导航界面 29
实例020 按钮导航界面 30
实例021 图片导航界面 32
1.6 界面窗体应用实例 34
实例022 使用位图设计畸形界面 34
实例023 椭圆形的程序界面 35
实例024 自绘窗体界面 36
实例025 以时钟显示界面 41
实例026 窗体融合技术 42
实例027 限制对话框最大时的窗口大小 46
实例028 分割视图窗口 47
实例029 对话框全屏显示 48
1.7 多媒体宣传光盘应用实例 50
实例030 多媒体宣传光盘主界面 50
实例031 自动运行的多媒体宣传光盘 51
1.8 多媒体触摸屏程序应用实例 52
实例032 采购中心多媒体触摸屏程序 52
实例033 为触摸屏程序添加虚拟键盘 54
1.9 窗体位置应用实例 55
实例034 不可移动的窗体 55
实例035 始终在最上面的窗体 55
实例036 以动画形式显示窗体 56
实例037 磁性窗体 58
1.10 窗体标题栏应用实例 59
实例038 闪烁的窗体标题栏 59
实例039 拖动没有标题栏的窗体 60
实例040 禁用标题栏上的最大化、最小化或关闭按钮 60
1.11 窗体形状及应用 62
实例041 半透明窗体 62
实例042 创建字型窗体 63
实例043 设计桌面精灵 64
1.12 通用对话框的应用 67
实例044 打开位图预览对话框 67
实例045 打开Windows新型对话框 69
实例046 同时选择多个文件 70
实例047 文本替换对话框 71
实例048 字体选择对话框 73
第2章 控件应用 75
2.1 按钮控件典型实例 76
实例049 AVI动画按钮 76
实例050 GIF动画按钮 78
实例051 图文按钮 80
实例052 不规则按钮 82
实例053 热点按钮 84
2.2 编辑框控件典型实例 86
实例054 为编辑框设置新的系统菜单 87
实例055 为编辑框控件添加列表选择框 88
实例056 多彩边框的编辑框 90
实例057 改变编辑框文本颜色 91
实例058 不同文本颜色的编辑框 92
实例059 位图背景编辑框 93
2.3 静态文本控件典型实例 94
实例060 电子计时器 94
实例061 使用静态文本控件设计群组框 96
实例062 制作超链接控件 97
2.4 列表框控件典型实例 99
实例063 利用列表框控件实现标签式数据选择 99
实例064 具有水平滚动条的列表框控件 100
实例065 列表项的提示条 101
实例066 位图背景列表框控件 104
2.5 组合框控件典型实例 105
实例067 将数据表中的字段添加到组合框控件 106
实例068 带查询功能的组合框控件 107
实例069 自动调整组合框的宽度 108
实例070 颜色组合框 109
实例071 多列显示的组合框 111
实例072 带图标的组合框 113
实例073 显示系统盘符组合框 114
2.6 列表视图控件典型实例 115
实例074 Windows资源管理器 115
实例075 利用列表视图控件浏览数据 118
实例076 利用列表视图控件制作导航界面 120
实例077 在列表视图中拖动视图项 121
实例078 具有排序功能的列表视图控件 123
实例079 具有文本录入功能的列表视图控件 126
实例080 使用列表视图设计登录界面 128
2.7 树视图控件典型实例 129
实例081 多级数据库树状结构数据显示 129
实例082 节点拖动功能的树控件 131
实例083 带复选功能的树状结构 134
实例084 三态效果树控件 135
实例085 修改树控件节点连线颜色 137
实例086 位图背景树控件 138
实例087 显示磁盘目录 140
实例088 树型提示框 141
2.8 RichEdit控件典型实例 143
实例089 利用RichEdit显示Word文档 143
实例090 利用RichEdit控件实现文字定位与标识 144
实例091 利用RichEdit控件显示图文数据 146
实例092 在RichEdit中显示不同字体和颜色的文本 148
实例093 在RichEdit中显示GIF动画 149
2.9 滚动条控件典型实例 157
实例094 自定义滚动条控件 157
2.10 进度条控件典型实例 162
实例095 进度条百分比显示 162
实例096 渐变颜色的进度条 164
2.11 工具提示控件典型实例 165
实例097 应用工具提示控件 165
2.12 滑块控件典型实例 167
实例098 使用滑块控件设置颜色值 167
实例099 绘制滑块控件 168
2.13 标签控件典型实例 170
实例100 应用标签控件 170
实例101 自定义标签控件 172
2.14 控件数组典型实例 175
实例102 向窗体中动态添加控件 175
实例103 公交线路模拟 177
第3章 图形技术 179
3.1 绘制图形 180
实例104 绘制正弦曲线 180
实例105 绘制蜗牛曲线 181
实例106 绘制贝塞尔曲线 182
实例107 画图程序 183
实例108 绘制立体模型 184
实例109 利用IFS算法绘制自然景物 186
3.2 图像预览 188
实例110 图片自动预览程序 188
实例111 图片批量浏览 189
实例112 浏览大幅BMP图片 192
实例113 放大和缩小图片 195
实例114 图像任意角度旋转 197
3.3 图片效果 204
实例115 图片马赛克效果 204
实例116 图片百叶窗效果 207
实例117 电影胶片特效 209
实例118 翻转图片效果 210
实例119 图片浮雕效果 212
3.4 图片颜色转换 213
实例120 图像的锐化处理 213
实例121 图片反色处理 215
实例122 图像的灰度化转换 216
实例123 显示JPG图片 217
3.5 图形转换与缩放 219
实例124 将位图转换为JPG 219
实例125 将位图转为GIF图标 220
实例126 图片的平滑缩放 220
3.6 图像的剪切、合成与识别 222
实例127 图像的剪切 222
实例128 图像的合成 224
实例129 获取鼠标任意位置的颜色值 225
实例130 提取图片中的对象 226
实例131 手写数字识别 228
3.7 图像字体 231
实例132 旋转的文字 231
实例133 当前系统字体列表 233
实例134 空心文字 234
实例135 彩虹文字 235
实例136 如何在图片上平滑移动文字 236
实例137 图像水印效果 238
3.8 图像管理 240
实例138 管理计算机内图片文件的程序 240
实例139 提取并保存应用程序图标 243
3.9 图片动画 245
实例140 利用图片制作屏幕保护程序 245
实例141 图片动画 246
实例142 指法练习软件 247
3.10 简单游戏设计 251
实例143 拼图游戏 251
实例144 网络五子棋 255
实例145 20点游戏 259
实例146 扫雷游戏 264
实例147 彩票号码生成器 270
3.11 OpenGL程序设计 272
实例148 制作OpenGL动画 272
实例149 利用OpenGL绘制立体模型 275
实例150 利用OpenGL绘制NURBS曲线 278
3.12 GDI+程序设计 280
实例151 使用GDI+显示GIF动画 280
实例152 使用GDI+实现图像格式转换 282
第4章 多媒体技术 285
4.1 动画 286
实例153 利用图标制作小动画 286
实例154 利用位图制作AVI动画 287
实例155 播放GIF动画 290
实例156 播放AVI动画 291
实例157 播放VCD 292
4.2 制作与播放音频 293
实例158 可以选择播放曲目的CD播放器 293
实例159 MP3播放器 295
实例160 声音录制与播放 297
实例161 制作RealOne播放器 298
4.3 多媒体控制 300
实例162 部队起床号程序 301
实例163 利用PC喇叭播放声音 304
实例164 控制左右声道 306
4.4 屏幕保护相关程序 307
实例165 电子相册屏幕保护程序 307
实例166 产品宣传屏幕保护程序 309
实例167 滚动字幕屏幕保护程序 311
4.5 DirectShow程序设计 312
实例168 音频捕捉 312
实例169 音频压缩 316
实例170 视频捕捉 320
实例171 视频压缩 322
实例172 使用Direct Show设计媒体播放器 328
第5章 文件系统 343
5.1 文件的基本操作 344
实例173 创建和删除文件夹 344
实例174 把文件删除到回收站中 345
实例175 清空回收站 346
实例176 强制删除文件 347
5.2 查找文件 352
实例177 搜索文件 352
实例178 使用多线程实现文件快速搜索 354
实例179 检查文件是否存在 356
实例180 提取指定文件夹目录到INI文件 357
5.3 与文件目录相关的命令操作 359
实例181 删除文件目录 359
实例182 重命名文件目录 360
5.4 文件、文件夹的复制和移动 361
实例183 批量移动文件 361
实例184 网络文件夹复制 363
实例185 文件复制过程中显示进度条 365
5.5 文件修改 367
实例186 修改应用程序图标 367
实例187 更改文件夹图标 370
实例188 批量删除指定类型的文件 372
实例189 批量重命名文件 373
实例190 修改文件属性 375
实例191 修改文件及目录的名称 377
5.6 文件的读取与保存 379
实例192 顺序读取文件 380
实例193 制作日志文件 381
实例194 获取Word文档属性 382
实例195 将Word转换为HTML 385
实例196 提取Word文档目录 386
5.7 文件管理 388
实例197 分类整理磁盘文件 388
实例198 计算机磁盘空间报警程序 390
实例199 批量改变指定文件的属性 392
5.8 加密与解密 394
实例200 文件的加密与解密 394
实例201 文件夹加密 396
5.9 INI文件 397
实例202 向INI文件中写入数据 397
实例203 使用INI文件保存配置信息 398
5.10 其他 400
实例204 文件分割器 400
实例205 用WinRar压缩和解压文件 402
实例206 捆绑可执行文件 404
实例207 读写XML文件 407
第6章 操作系统与Windows相关程序 409
6.1 启动相关 410
实例208 进入WinXP前发出警告 410
实例209 实现关机、重启计算机 411
实例210 将程序设置成为开机自动执行的程序 412
6.2 磁盘相关 413
实例211 判断驱动器属性 413
实例212 获取磁盘空间信息 415
实例213 获取磁盘序列号 416
实例214 取消磁盘共享 417
实例215 格式化磁盘 418
6.3 桌面相关 420
实例216 隐藏、显示开始按钮 420
实例217 隐藏、显示桌面文件 421
实例218 隐藏、显示Windows任务栏 422
实例219 随机修改系统桌面背景 423
实例220 抓取桌面 425
6.4 系统相关 429
实例221 获得Windows和System的路径 429
实例222 控制光驱的弹开与关闭 430
实例223 启动控制面板 431
实例224 为程序添加快捷键 433
实例225 实现OCX控件的注册和卸载 434
6.5 系统监控 436
实例226 检测U盘是否插入 436
实例227 检测文件和目录是否改变 438
实例228 检测系统启动模式 441
实例229 内存使用状态 442
实例230 监视剪贴板内容 443
实例231 利用钩子技术实现键盘监控 444
6.6 程序相关 446
实例232 用列表显示系统正在运行的程序 446
实例233 为程序添加快捷方式 447
实例234 设置其他程序中编辑框内的文本 449
实例235 执行一个外部程序直到其结束 451
实例236 调用具有参数的可执行程序 452
实例237 编写控制面板小应用程序 454
实例238 编写Windows服务 455
实例239 阻止程序重复运行 458
6.7 线程同步 459
实例240 利用事件对象实现线程同步 459
实例241 利用互斥对象实现线程同步 461
实例242 利用临界区实现线程同步 462
实例243 用信号量实现线程同步 463
实例244 多线程实例 465
6.8 鼠标、键盘相关 467
实例245 动画鼠标 467
实例246 限制鼠标移动区域 468
实例247 屏蔽系统功能键 469
实例248 设置鼠标形状 470
实例249 控制键盘指示灯 471
6.9 动态链接库 472
实例250 访问DLL中的位图 472
实例251 从DLL中导出类对象 473
第7章 注册表 475
7.1 显示与隐藏 476
实例252 隐藏、显示“我的电脑”、“回收站”、“网上邻居” 476
实例253 隐藏、显示驱动器 478
7.2 IE浏览器设置 479
实例254 修改IE浏览器标题栏内容 479
实例255 隐藏IE浏览器的右键关联菜单 480
实例256 设置IE浏览器的默认主页 481
实例257 清空上网历史记录 482
7.3 文件控制 483
实例258 如何建立文件关联 483
实例259 控制光驱的自动运行功能 485
7.4 游戏设置 486
实例260 设置“蜘蛛纸牌”游戏 486
实例261 修改“扫雷”游戏的设置 488
7.5 应用软件设置 489
实例262 设置Word 2000文档及图片的保存路径 490
实例263 更改Photoshop安装时的登记信息 491
第8章 数据库技术 493
8.1 连接数据库 494
实例264 使用ODBC DSN连接SQL Server数据库 494
实例265 用ADO动态连接数据库 496
8.2 添加数据 499
实例266 利用INSERT语句批量插入数据 499
实例267 利用SELECT INTO生成临时表 500
8.3 更新数据 501
实例268 批量修改数据 502
实例269 将指定字段数据为空的记录添上数据 503
8.4 删除数据 503
实例270 删除单条数据 504
实例271 删除数据库中无用处的记录 504
8.5 视图 505
实例272 动态创建视图 506
实例273 通过视图更改数据 507
实例274 删除视图 507
8.6 存储过程 508
实例275 创建存储过程 508
实例276 删除存储过程 510
实例277 在程序中使用存储过程 511
实例278 调用具有输出参数的存储过程 512
实例279 编写扩展存储过程 513
8.7 数据库结构的读取与修改 515
实例280 读取Access数据库结构 515
实例281 读取SQL Server数据库结构 517
8.8 图片、多媒体数据录入技术 518
实例282 对Access数据库进行录入和提取图片 518
实例283 对SQLServer数据库进行录入和提取多媒体文件 521
8.9 数据备份恢复 523
实例284 Access数据库备份与还原 523
实例285 SQL Server数据库备份与恢复 524
实例286 定时数据备份 527
8.10 其他数据库技术 528
实例287 断开SQL Server数据库与其他应用程序的连接 528
实例288 在Visual C++中执行事务 529
实例289 在程序中执行SQL脚本 530
实例290 利用SQL语句执行外围命令 532
实例291 枚举SQL Server服务器 532
实例292 附加数据库 534
实例293 分离数据库 535
第9章 SQL查询相关技术 537
9.1 通用查询 538
实例294 SELECT语句的应用方法 538
实例295 SQL语句的模糊查询 539
实例296 利用查询语句复制表结构 540
9.2 周期、日期查询 541
实例297 查询指定时间段的数据 542
实例298 按月查询数据 543
实例299 在查询中使用日期函数 544
9.3 比较、逻辑、重复记录查询 545
实例300 NOT与谓词进行组合条件的查询 545
实例301 查询时不显示重复记录 546
9.4 排序、分组统计 547
实例302 对数据进行降序查询 548
实例303 对数据进行多条件排序 549
9.5 聚集函数 550
实例304 利用聚集函数SUM对销售额进行汇总 550
实例305 利用聚集函数AVG求某班学生的平均年龄 551
实例306 利用聚集函数COUNT求日销售额大于某值的商品数 552
第10章 打印与报表技术 553
10.1 基础打印 554
实例307 基于文档/视图结构的打印 554
实例308 基于对话框结构的打印程序 557
实例309 打印对话框及其控件中的数据 558
10.2 打印图片 560
实例310 打印图片 560
实例311 打印简历 561
10.3 打印单据 566
实例312 打印汇款单 566
实例313 打印信封标签 569
实例314 假条套打 571
实例315 批量打印条形码 572
10.4 控制打印 575
实例316 批量打印文档 575
实例317 实现横向打印 576
实例318 设置打印表格的边线及字体 578
10.5 打印预览 580
实例319 具有滚动条的预览界面 580
实例320 在对话框中分页预览 585
第11章 硬件相关开发技术 591
11.1 串口控制 592
实例321 通过串口传递数据 592
实例322 通过串口控制对方计算机关闭 596
11.2 加密狗和加密锁 598
实例323 将密码写入加密狗 598
实例324 使用加密狗进行身份验证 599
实例325 将数据写入加密锁 600
实例326 使用加密锁进行软件注册 601
11.3 IC卡、ID卡应用 603
实例327 向IC卡中写入数据 603
实例328 读取IC卡中的数据 606
实例329 利用IC卡制作考勤程序 607
实例330 使用ID卡制作考勤程序 609
11.4 监控 612
实例331 利用简易摄像头编写监控程序 612
实例332 编写监控录像程序 614
实例333 远程视频监控系统 615
实例334 云台控制 618
11.5 扫描、条形码、POS控制 622
实例335 利用条形码扫描器销售商品 622
实例336 使用数据采集器进行库存盘点 625
实例337 设计钱箱控制程序 626
实例338 设计扫描仪控制程序 628
实例339 设计发票机控制程序 628
11.6 语音卡控制 629
实例340 语音卡电话呼叫系统 629
实例341 语音卡实现来电显示 634
实例342 利用语音卡实现电话录音 637
实例343 利用语音卡实现点歌祝福 639
11.7 手机程序开发 642
实例344 利用短信猫发送短信 642
实例345 利用短信远程关闭计算机 643
实例346 使用“猫”拨打电话 645
11.8 其他程序 646
实例347 利用神龙卡制作练歌房程序 646
实例348 指纹识别 647
实例349 游戏杆控制 651
第12章 网络开发技术 655
12.1 获取计算机信息 656
实例350 获取计算机名称和工作组 656
实例351 通过计算机名获取IP地址 657
实例352 获取本机MAC地址 658
实例353 获得系统打开的端口和状态 660
12.2 局域网控制与管理 661
实例354 获取局域网计算机名称和IP 661
实例355 远程控制局域网计算机 662
12.3 局域网资源管理 665
实例356 计算机监控 665
实例357 实现进程间通信 668
实例358 利用内存映射实现进程间通信 670
12.4 网上资源共享 671
实例359 获得网上共享资源 671
实例360 映射网络驱动器 673
12.5 套接字应用 674
实例361 网络聊天室 674
实例362 语音实时通信 677
实例363 视频聊天室 680
12.6 其他 684
实例364 获得拨号网络的列表 684
实例365 获取计算机上串口的数量 685
实例366 检测系统中安装的协议 686
实例367 域名解析 688
第13章 Web编程 689
13.1 上网控制 690
实例368 定时登录Internet 690
实例369 根据网络连接控制IE启动 691
13.2 文件上传与下载 692
实例370 FTP文件上传程序 692
实例371 HTTP服务器多线程文件下载 695
实例372 遍历FTP文件目录 696
13.3 邮件管理 698
实例373 邮件接收程序 698
实例374 发送电子邮件附件 699
实例375 使用MAPI发送邮件 701
13.4 上网监控 703
实例376 监控上网过程 703
实例377 网络监听工具 704
13.5 浏览器应用 708
实例378 制作自己的网络浏览软件 708
实例379 XML数据库文档的浏览 710
实例380 使用WebBrowser执行脚本 712
实例381 电子书阅读器 713
13.6 网上信息提取 719
实例382 定时提取网页源码 719
实例383 网上天气预报 721
实例384 网页链接提取器 722
13.7 其他 724
实例385 利用TAPI实现网络拨号 724
实例386 互联网文件传输 726
第14章 加密、安全与软件注册 733
14.1 数据加密与解密 734
实例387 数据加密技术 734
实例388 使用MD5算法对密码进行加密 735
实例389 对数据报进行加密保障通信安全 739
实例390 对档案进行加密和解密 741
14.2 软件注册与加密 746
实例391 利用INI文件对软件进行注册 746
实例392 利用注册表设计软件注册程序 748
实例393 利用网卡序列号设计软件注册程序 749
实例394 根据CPU和磁盘序列号设计软件注册程序 751
第15章 实用工具 753
实例395 Vista风格日历 754
实例396 SQL数据库提取器 760
实例397 加班网上管理 767
实例398 垃圾文件清理工具 770
实例399 网页照相机 772
实例400 屏幕截图工具 775
附录 技术要点对应实例位置 779