第1章 阅界藏书管理系统 1
—流程控制 数组 面向对象 指针 成员函数 文件操作
1.1 开发背景 1
1.2 系统设计 2
1.2.1 开发环境 2
1.2.2 业务流程 2
1.2.3 功能结构 2
1.3 技术准备 3
1.4 公共类设计 11
1.5 主窗体设计 14
1.5.1 主窗体模块概述 14
1.5.2 窗口初始化 14
1.5.3 设置窗口标题栏 15
1.5.4 显示系统主菜单 15
1.6 功能设计 16
1.6.1 添加新书功能 16
1.6.2 浏览全部功能 17
1.6.3 删除图书功能 18
1.6.4 项目主函数 19
1.7 项目运行 19
1.8 源码下载 19
第2章 软件注册码生成专家 20
—宏技术 剪贴板操作 注册表操作 加密算法 系统API应用 硬件信息获取
2.1 开发背景 20
2.2 系统设计 21
2.2.1 开发环境 21
2.2.2 业务流程 21
2.2.3 功能结构 21
2.3 技术准备 22
2.3.1 技术概览 22
2.3.2 获取CPU序列号 22
2.3.3 获得磁盘序列号 23
2.3.4 获得网卡地址 24
2.3.5 生成注册码 24
2.3.6 根据注册表中数据限制试用次数 25
2.3.7 注册快捷键 26
2.3.8 一次性粘贴注册码 27
2.4 注册码生成器模块 28
2.4.1 注册码生成器模块概述 28
2.4.2 界面设计 28
2.4.3 获取序列号 28
2.4.4 实现“生成注册码”按钮功能 30
2.5 注册软件主窗体模块 31
2.5.1 注册软件主窗体模块概述 31
2.5.2 界面设计 31
2.5.3 实现注册软件主窗体功能 32
2.6 软件注册功能模块 32
2.6.1 软件注册功能模块概述 32
2.6.2 界面设计 32
2.6.3 读取试用次数 33
2.6.4 实现“前进”按钮功能 33
2.7 注册向导窗体模块 34
2.7.1 注册向导窗体模块概述 34
2.7.2 界面设计 34
2.7.3 设置注册码编辑框 35
2.7.4 实现“后退”按钮功能 35
2.7.5 实现“注册”按钮功能 36
2.8 项目运行 36
2.9 源码下载 38
第3章 系统优化清理助手 39
—MFC界面开发 文件操作 TabControl面板控件 窗体标题栏重绘 注册表操作 系统进程管理
3.1 开发背景 39
3.2 系统设计 40
3.2.1 开发环境 40
3.2.2 业务流程 40
3.2.3 功能结构 40
3.3 技术准备 41
3.3.1 技术概览 41
3.3.2 自绘标题栏 42
3.3.3 获得任务列表 45
3.3.4 获取正在运行的进程 46
3.3.5 为列表视图控件关联右键菜单 47
3.3.6 清空回收站 49
3.3.7 清空“运行”中历史记录 49
3.3.8 清空IE历史记录 50
3.3.9 调用控制面板工具 51
3.4 主窗体模块 51
3.4.1 主窗体模块概述 51
3.4.2 界面设计 51
3.4.3 实现子窗口切换功能 52
3.4.4 实现控制面板操作功能 53
3.4.5 绘制主窗口背景图片 54
3.5 控制面板操作模块 54
3.5.1 控制面板模块概述 54
3.5.2 界面设计 54
3.5.3 设置按钮的显示图标 55
3.5.4 实现各按钮的单击事件功能 55
3.6 磁盘空间整理模块 57
3.6.1 磁盘空间整理模块概述 57
3.6.2 界面设计 57
3.6.3 设置视图控件 58
3.6.4 实现删除文件功能 60
3.6.5 实现“清除”按钮功能 60
3.7 垃圾文件清理模块 60
3.7.1 垃圾文件清理模块概述 60
3.7.2 界面设计 61
3.7.3 实现获得系统驱动器盘符功能 61
3.7.4 实现删除垃圾文件功能 62
3.7.5 实现“开始”按钮功能 62
3.7.6 实现“停止”按钮功能 63
3.8 系统任务管理模块 63
3.8.1 系统任务管理模块概述 63
3.8.2 界面设计 63
3.8.3 设置标签页和视图控件 63
3.8.4 实现“结束任务”菜单项功能 65
3.9 项目运行 65
3.10 源码下载 66
第4章 悦看多媒体播放器 67
—自定义控件 多线程 DirectShow流媒体处理技术
4.1 开发背景 67
4.2 系统设计 68
4.2.1 开发环境 68
4.2.2 业务流程 68
4.2.3 功能结构 68
4.3 技术准备 68
4.3.1 技术概览 68
4.3.2 DirectShow流媒体处理技术 70
4.4 媒体播放器主窗口模块 75
4.4.1 媒体播放器主窗口模块概述 75
4.4.2 界面设计 75
4.4.3 媒体播放器主窗口模块初始化 75
4.4.4 实现播放功能 76
4.4.5 实现“打开文件”按钮功能 80
4.4.6 实现“抓图”按钮功能 80
4.4.7 实现“全屏”按钮功能 81
4.4.8 实现设置视频图像功能 82
4.4.9 实现“快进”按钮功能 82
4.4.10 实现“增大音量”按钮功能 83
4.4.11 实现“黑白图像”按钮功能 83
4.5 视频显示模块 84
4.5.1 视频显示模块概述 84
4.5.2 界面设计 84
4.5.3 实现加载菜单功能 84
4.5.4 实现弹出菜单功能 84
4.5.5 实现调整窗口功能 84
4.5.6 实现播放文件功能 85
4.6 字幕叠加模块 85
4.6.1 字幕叠加模块概述 85
4.6.2 界面设计 86
4.6.3 叠加文本的字体设置 86
4.6.4 取消字幕信息 86
4.7 视频设置模块 88
4.7.1 视频设置模块概述 88
4.7.2 界面设计 88
4.7.3 设置视频图像 88
4.7.4 视频图像的默认效果 90
4.7.5 实现色调功能 91
4.8 文件播放列表模块 91
4.8.1 文件播放列表模块概述 91
4.8.2 界面设计 91
4.8.3 实现添加文件列表功能 92
4.8.4 实现删除文件列表功能 93
4.8.5 实现载入列表功能 93
4.8.6 实现保存列表功能 93
4.8.7 实现选中文件播放功能 94
4.8.8 实现循环播放功能 95
4.9 项目运行 96
4.10 源码下载 96
第5章 FTP文件管理系统 97
—自定义控件 文件操作 FTP操作 多线程
5.1 开发背景 97
5.2 系统设计 98
5.2.1 开发环境 98
5.2.2 业务流程 98
5.2.3 功能结构 99
5.3 技术准备 99
5.3.1 技术概览 99
5.3.2 登录FTP服务器 99
5.3.3 实现FTP目录浏览 100
5.3.4 多线程实现FTP任务下载 101
5.3.5 在任务列表中暂停、取消某一任务 106
5.3.6 利用鼠标拖曳实现文件的上传/下载 106
5.3.7 抽象的功能面板类 108
5.4 主窗体模块 108
5.4.1 主窗体模块概述 108
5.4.2 界面设计 109
5.4.3 创建登录信息栏和工具栏窗口 110
5.4.4 实现“查看”菜单中“登录信息栏”功能 110
5.4.5 实现“查看”菜单中“工具信息栏”功能 111
5.5 登录信息栏模块 112
5.5.1 登录信息模块概述 112
5.5.2 界面设计 112
5.5.3 创建登录信息栏 112
5.5.4 实现登录FTP服务器功能 113
5.6 工具栏模块 113
5.6.1 工具栏模块概述 113
5.6.2 界面设计 114
5.6.3 创建工具栏 114
5.6.4 实现查找文件路径功能 115
5.6.5 实现下载功能 116
5.6.6 实现上传功能 117
5.7 本地信息模块 119
5.7.1 本地信息模块概述 119
5.7.2 界面设计 119
5.7.3 获取系统磁盘目录 119
5.7.4 显示磁盘内容 120
5.7.5 实现拖曳功能 121
5.8 远程FTP服务器信息模块 122
5.8.1 远程FTP服务器信息模块概述 122
5.8.2 界面设计 122
5.8.3 获取系统文件图像 122
5.8.4 实现鼠标拖曳功能 123
5.9 任务列表模块 124
5.9.1 任务列表模块概述 124
5.9.2 界面设计 124
5.9.3 创建列表控件 125
5.9.4 实现暂停功能 126
5.9.5 实现继续功能 126
5.9.6 实现删除功能 126
5.10 项目运行 127
5.11 源码下载 127
第6章 网络五子棋 128
—枚举 嵌套语句 链表 消息处理 GDI绘图 Socket网络编程
6.1 开发背景 129
6.2 系统设计 129
6.2.1 开发环境 129
6.2.2 业务流程 129
6.2.3 功能结构 130
6.3 技术准备 130
6.3.1 技术概览 130
6.3.2 Socket网络编程 131
6.3.3 使用TCP进行网络通信 131
6.3.4 定义网络通信协议 132
6.3.5 在棋盘中绘制棋子 133
6.3.6 五子棋赢棋判断 135
6.3.7 设计游戏悔棋功能 138
6.3.8 设计游戏回放功能 140
6.4 服务器端主窗体模块设计 143
6.4.1 服务器端主窗体模块概述 143
6.4.2 创建3个窗体 143
6.4.3 调整窗体大小 145
6.5 棋盘窗体模块设计 146
6.5.1 棋盘窗体模块概述 146
6.5.2 界面设计 146
6.5.3 获取客户端信息 146
6.5.4 绘制表格 147
6.5.5 实现游戏回放功能 147
6.5.6 获得棋子位置 149
6.5.7 判断是否赢棋 151
6.5.8 实现服务器设置功能 154
6.5.9 检测对方状态 155
6.5.10 设置棋子临近点 159
6.6 游戏控制窗体模块设计 160
6.6.1 游戏控制窗体模块概述 160
6.6.2 界面设计 160
6.6.3 实现开始功能 161
6.6.4 实现悔棋功能 161
6.6.5 实现和棋功能 161
6.6.6 实现认输功能 161
6.6.7 实现游戏回放功能 162
6.7 客户端主窗体模块设计 162
6.7.1 客户端主窗体模块设计 162
6.7.2 创建3个窗体 162
6.7.3 调整窗体大小 164
6.8 项目运行 165
6.9 源码下载 166
第7章 坦克动荡游戏 167
—结构体 泛型 GDI绘图 碰撞检测算法 最短路径算法 自动寻路算法 键盘消息处理
7.1 开发背景 167
7.2 系统设计 168
7.2.1 开发环境 168
7.2.2 业务流程 168
7.2.3 功能结构 168
7.3 技术准备 169
7.3.1 技术概览 169
7.3.2 绘图库GDIPlus的使用 172
7.4 公共设计 173
7.4.1 引进所有游戏对象声明 173
7.4.2 声明核心对象之CGame类的公有方法 173
7.4.3 声明私有方法 174
7.5 主窗体设计 176
7.6 功能设计 177
7.6.1 游戏初始化 177
7.6.2 “画”游戏帧数 180
7.6.3 绘制坦克 181
7.6.4 子弹功能 181
7.6.5 碰撞检测 187
7.6.6 计算机玩家自寻路径 194
7.6.7 获取鼠标及键盘消息 195
7.6.8 人机大战 198
7.6.9 双人大战 200
7.7 项目运行 201
7.8 源码下载 202
第8章 桌面破坏王游戏 203
—容器 迭代器 GDI绘图 鼠标消息处理 屏幕截图技术
8.1 开发背景 203
8.2 系统设计 204
8.2.1 开发环境 204
8.2.2 业务流程 204
8.2.3 功能结构 205
8.3 技术准备 205
8.3.1 技术概览 205
8.3.2 鼠标消息处理 205
8.3.3 屏幕截图技术 206
8.4 公共设计 210
8.4.1 游戏调度器CGame类设计 210
8.4.2 引入资源图片 217
8.4.3 实现工具及破坏标记接口 218
8.5 游戏菜单模块 221
8.5.1 盒子的实现 221
8.5.2 “飞出”的工具 225
8.5.3 显示游戏菜单 229
8.6 忍者工具模块 230
8.6.1 实现忍者破坏标记功能 230
8.6.2 实现忍者工具功能 231
8.6.3 使用忍者破坏桌面 239
8.7 粉刷匠工具模块 241
8.7.1 实现粉刷匠粉刷痕迹功能 241
8.7.2 实现粉刷匠工具功能 242
8.7.3 使用粉刷匠破坏桌面 246
8.8 锤子工具模块 247
8.8.1 实现破碎效果 247
8.8.2 实现锤子工具功能 249
8.8.3 使用锤子碎屏破坏效果 250
8.9 橡皮人工具模块 250
8.9.1 实现橡皮人擦除痕迹功能 251
8.9.2 实现橡皮人工具功能 253
8.9.3 使用橡皮人擦除屏幕 256
8.10 项目运行 256
8.11 源码下载 256
第9章 一站式文档管家 257
—文件操作 ADO技术 SQL Server数据库 Word操作
9.1 开发背景 258
9.2 系统设计 258
9.2.1 开发环境 258
9.2.2 业务流程 258
9.2.3 功能结构 258
9.3 技术准备 259
9.3.1 技术概览 259
9.3.2 添加ADO连接类 261
9.4 数据库设计 262
9.4.1 数据表结构 262
9.4.2 添加数据库表的类 263
9.5 主窗体模块设计 267
9.5.1 主窗体模块概述 267
9.5.2 初始化控件 267
9.5.3 树形视图控件设计 268
9.5.4 实现文档浏览功能 270
9.5.5 实现删除文档功能 271
9.5.6 实现日志管理功能 271
9.5.7 实现退出系统功能 272
9.6 登录管理模块设计 272
9.6.1 登录管理模块概述 272
9.6.2 添加背景 272
9.6.3 实现登录功能 273
9.7 单位档案模块设计 276
9.7.1 单位档案模块概述 276
9.7.2 添加Tab控件 276
9.7.3 实现添加单位功能 277
9.7.4 实现修改单位功能 278
9.7.5 实现删除单位功能 278
9.7.6 实现标签切换功能 279
9.8 文档类别模块设计 280
9.8.1 文档类别模块概述 280
9.8.2 实现确认功能 280
9.8.3 实现添加功能 281
9.8.4 实现修改功能 281
9.8.5 实现删除功能 282
9.9 文档管理模块设计 282
9.9.1 文档管理模块概述 282
9.9.2 初始化控件 282
9.9.3 实现查找文件路径功能 284
9.9.4 实现保存功能 285
9.9.5 实现删除功能 286
9.9.6 实现自动添加文档类别功能 287
9.10 口令修改模块设计 288
9.10.1 口令修改模块概述 288
9.10.2 实现显示用户名功能 288
9.10.3 实现确认功能 288
9.11 项目运行 289
9.12 源码下载 290
第10章 股票数据抓取分析系统 291
—GDI绘图 libcurl第三方库 SQL Server数据库 数据爬取 K线图绘制技术
10.1 开发背景 291
10.2 系统设计 292
10.2.1 开发环境 292
10.2.2 业务流程 292
10.2.3 功能结构 292
10.3 技术准备 293
10.3.1 技术概览 293
10.3.2 绘制股票日数据K线图 296
10.4 数据库设计 297
10.4.1 附加数据库 297
10.4.2 数据库表介绍 297
10.4.3 数据库操作 299
10.5 登录模块设计 305
10.5.1 登录模块概述 305
10.5.2 实现登录功能 305
10.5.3 实现取消功能 306
10.6 主窗体模块设计 306
10.6.1 主窗体模块概述 306
10.6.2 主窗体和各模块功能组织方式 307
10.6.3 实现窗口显示隐藏的切换功能 308
10.7 公式选股模块设计 309
10.7.1 公式选股模块概述 309
10.7.2 解析公式 309
10.7.3 运行公式 310
10.8 数据管理模块设计 312
10.8.1 数据管理模块概述 312
10.8.2 实现基础数据维护功能 312
10.8.3 实现导入导出数据功能 314
10.8.4 实现历史数据查询功能 316
10.9 品种管理模块设计 318
10.9.1 品种管理模块概述 318
10.9.2 实现品种维护功能 318
10.9.3 实现选择品种功能 321
10.10 工具模块设计 323
10.10.1 工具模块概述 323
10.10.2 实现金融计算器功能 323
10.10.3 实现屏幕截图功能 325
10.10.4 实现系统设置功能 326
10.11 项目运行 330
10.12 源码下载 330