第一部分 编程基础与技巧 2
第1章 Visual Basic入门 2
1.1 Visual Basic速成版 2
1.2 .NET Framework 2
1.3 Visual Basic 2008的开发环境 4
1.3.1 启动Visual Basic 2008 4
1.3.2 定制IDE 6
1.4 创建Windows窗体应用程序 8
1.4.1 需求分析 8
1.4.2 环境与界面的处理 8
1.4.3 代码编写 10
1.4.4 插入代码段的使用 13
1.5 调试 13
1.6 部署应用程序 14
1.6.1 理解ClickOnce技术 14
1.6.2 使用发布向导 15
1.6.3 测试安装程序 17
1.7 命名空间 17
1.8 如何寻求帮助和提高编程水平 18
1.8.1 基本语法 18
1.8.2 基本技巧 19
1.8.3 理论知识 19
1.9 本章小结 20
第2章 界面设计 21
2.1 公共控件 21
2.1.1 Label 21
2.1.2 LinkLabel 21
2.1.3 TextBox 22
2.1.4 CheckBox 23
2.1.5 RadioButton 24
2.1.6 ComboBox 24
2.1.7 ToolTip 25
2.1.8 NotifyIcon 26
2.1.9 NumericUpDown 26
2.1.10 PictureBox 27
2.1.11 ProgressBar 28
2.1.12 TrackBar 29
2.1.13 DateTimePicker 30
2.2 容器 30
2.2.1 GroupBox 31
2.2.2 Panel 31
2.2.3 TabControl 32
2.2.4 SplitContainer 33
2.2.5 TableLayoutPanel 34
2.2.6 FlowLayoutPanel 35
2.3 菜单和工具栏 36
2.3.1 MenuStrip 36
2.3.2 ContextMenuStrip 37
2.3.3 ToolStrip 37
2.3.4 ToolStripContainer 39
2.3.5 StatusStrip 40
2.4 对话框 41
2.4.1 OpenFileDialog 41
2.4.2 SaveFileDialog 42
2.5 组件 43
2.5.1 ErrorProvider 43
2.5.2 HelpProvider 44
2.5.3 Timer 45
2.5.4 FileSystemWatcher 45
2.5.5 SerialPort 46
2.6 自定义控件 48
2.6.1 创建TimeLabel 48
2.6.2 使用TimeLabel 50
2.7 本章小结 50
第3章 图形程序设计 51
3.1 坐标系及其变换 51
3.2 系统颜色 51
3.3 Pen类 52
3.4 Graphics类 53
3.5 绘制形状 54
3.5.1 绘制直线 55
3.5.2 绘制矩形 55
3.5.3 绘制椭圆 55
3.5.4 绘制多边形 56
3.6 Brush 56
3.7 绘制实时数据线 57
3.8 本章小结 59
第4章 My命名空间 60
4.1 访问主机 60
4.1.1 播放音频 61
4.1.2 剪贴板操作 61
4.1.3 访问系统时钟 62
4.1.4 获取主机系统信息 62
4.1.5 访问键盘 63
4.1.6 访问鼠标 63
4.1.7 获取计算机的名称 64
4.1.8 访问网络 64
4.1.9 访问串口 64
4.2 访问应用程序 65
4.3 访问资源元素 66
4.4 访问用户与应用程序级设置 67
4.5 文本文件操作 71
4.6 注册表操作 72
4.6.1 使用My.Computer.Registry访问注册表 73
4.6.2 注册表的访问测试 74
4.7 My命名空间扩展 76
4.8 本章小结 77
第5章 常用编程技巧 78
5.1 消息框 78
5.2 输入对话框 79
5.3 模式对话框 80
5.4 获取环境变量的值 81
5.5 识别操作系统 82
5.6 String类及数据的格式化处理 83
5.6.1 String类的使用 83
5.6.2 数据的格式化处理 85
5.6.3 经典字符串函数的使用 87
5.7 日期与时间的处理 87
5.7.1 日期与时间的计算 88
5.7.2 日期与时间的格式化处理 89
5.8 可变数组与控件数组的使用 90
5.8.1 可变数组 90
5.8.2 控件数组 91
5.9 BASE64编码与解码 92
5.10 StopWatch的使用 94
5.11 控制计算机休眠或待机 94
5.12 Using语句的使用 95
5.13 控件获取焦点 96
5.14 动画精灵的实现 96
5.15 多线程的实现 97
5.16 杂项代码 101
5.16.1 时间相关函数 101
5.16.2 其他函数 104
5.16.3 杂项代码综合测试 105
5.17 本章小结 106
第6章 自定义字符串处理类 107
6.1 自定义类的创建 107
6.2 数据与属性的定义 108
6.3 构造函数与销毁函数 108
6.4 Web中文文本分词相关函数 109
6.5 密码穷举相关函数 117
6.6 其他常用函数 121
6.7 类的使用与测试 122
6.8 本章小结 124
第二部分 数据库操作技术 126
第7章 数据库基础 126
7.1 Access数据库的创建 126
7.2 关系数据库标准语言SQL 127
7.2.1 SQL的数据查询功能 127
7.2.2 SQL的数据操纵功能 128
7.3 在应用程序中访问数据库 129
7.3.1 连接到数据库 129
7.3.2 数据库的绑定 130
7.4 ADO.NET的基本原理 132
7.5 通过ADO.NET连接到数据源 133
7.6 通过DataReader访问数据库 134
7.7 通过DataAdapter访问数据库 136
7.7.1 DataSet的基本原理 136
7.7.2 使用DataAdapter填充数据集 138
7.7.3 使用DataAdapter更新数据源 139
7.7.4 使用CommandBuilder生成命令 140
7.8 本章小结 141
第8章 Access数据库类 142
8.1 私有变量与辅助函数的定义 142
8.2 属性 143
8.3 构造函数 145
8.4 数据源的更新 146
8.5 序号自动操作方法 147
8.6 其他方法 148
8.7 应用测试 148
8.8 本章小结 150
第9章 SQL Server数据库类 151
9.1 SQL Server 2005的安装 151
9.2 私有变量与辅助函数的定义 151
9.3 属性 153
9.4 构造函数 154
9.5 数据源的更新 155
9.6 应用测试 156
9.7 本章小结 157
第10章 DataGridView模板 158
10.1 DataGridView的主要特点 158
10.2 DataGridView的常用属性 158
10.2.1 布局属性 158
10.2.2 数据属性 159
10.2.3 外观属性 159
10.2.4 行为属性 161
10.2.5 杂项属性 161
10.3 DataGridView的常用方法 162
10.4 DataGridView的常用事件 162
10.4.1 CellClick事件 162
10.4.2 CellFormating事件 163
10.4.3 RowHeaderMouseClick事件 163
10.4.4 RowPrePaint事件 163
10.4.5 RowValidated事件 163
10.4.6 UserDeletingRow事件 164
10.5 非绑定模式的数据显示 164
10.6 BindingSource类用于数据绑定 166
10.7 DataGridView模板的实现 166
10.7.1 变量定义和数据表信息的获取 166
10.7.2 布局自动完成的准备工作 168
10.7.3 代码自动生成与属性的自动获取 169
10.7.4 数据自动更新技术 171
10.7.5 其他相关操作 171
10.8 DataGridView模板的发布与应用 172
10.9 本章小结 173
第11章 Windows事务提醒程序 174
11.1 数据库的设计 174
11.2 框架设计 174
11.2.1 需要的软件模块 174
11.2.2 窗体设计 175
11.2.3 项目属性设计 176
11.3 主窗体的代码实现 177
11.3.1 变量与方法定义 177
11.3.2 主窗体的主要事件 178
11.3.3 其他事件的处理 179
11.4 时钟代码的主要工作 180
11.4.1 主窗体信息更新和准备工作 180
11.4.2 记录的检索与处理 180
11.5 时间表设置窗体的代码实现 182
11.6 事务提醒窗体的代码实现 184
11.7 Interlocked类的使用 184
11.8 程序测试 185
11.9 本章小结 186
第三部分 串行通信解决方案 188
第12章 数据编码与处理技术 188
12.1 枚举类型和常量的定义 188
12.2 十六进制字符串的预处理 189
12.3 十六进制字符串中插入或删除空格 190
12.4 字节(数组)转换为十六进制字符串 191
12.5 十六进制字符串转换为字节(数组) 191
12.6 普通字符串与十六进制字符串之间的相互转换 193
12.7 字节数组与普通字符串之间的相互转换 194
12.8 普通字符串与Unicode字符串之间的相互转换 194
12.8.1 普通字符串转换为Unicode字符串 195
12.8.2 Unicode字符串转换为普通字符串 195
12.9 中文信息的加密与解密 196
12.10 随机字节(数组)的生成 197
12.11 字节的位操作与二进制转换 198
12.11.1 字节的位操作 198
12.11.2 二进制转换 199
12.11.3 应用测试 200
12.12 本章小结 201
第13章 数据包的校验技术 202
13.1 累加和(Add)校验 202
13.2 异或(Xor)校验 204
13.3 循环冗余(CRC)校验 204
13.4 累加求补(BCS)校验 206
13.5 结尾码的处理 207
13.6 数据包的统一校验 208
13.7 数据包的综合生成与信息提取 209
13.8 应用测试 210
13.9 本章小结 211
第14章 串行接口操作技术 212
14.1 串行接口名称的获取与应用 212
14.2 串行接口的打开与关闭 212
14.3 获取调制解调器的接口名称 213
14.4 获取串行接口的状态 214
14.5 通过串行接口发送数据 215
14.6 通过串行接口接收数据 216
14.7 带延迟的接收数据方法 217
14.8 综合测试 217
14.8.1 变量和辅助方法的定义 218
14.8.2 主要控件对象的关键代码 219
14.8.3 测试效果 220
14.9 本章小结 221
第15章 办公电话自动拨号程序 222
15.1 基本原理 222
15.2 窗体布局 222
15.3 项目属性设计 223
15.4 需要的软件模块 224
15.5 窗体代码分析 226
15.5.1 变量与方法定义 226
15.5.2 主窗体的主要事件 227
15.6 拨号功能的实现 228
15.7 复位操作的主要功能 229
15.8 上下文菜单代码分析 231
15.9 程序测试 232
15.10 本章小结 233
第四部分 网络通信与Web服务 236
第16章 通用TCP客户机 236
16.1 网络编程的常用类 236
16.2 IP地址的获取 236
16.3 TcpClient类 237
16.4 自定义TCP客户端类 238
16.4.1 基本定义 238
16.4.2 构造函数与销毁函数 239
16.4.3 与远程主机的连接 240
16.4.4 数据接收的处理 240
16.4.5 数据发送的处理 241
16.5 TCP客户机的窗体设计 242
16.6 需要的软件模块 243
16.7 主窗体的代码分析 243
16.7.1 自定义类的事件代理分析 244
16.7.2 主窗体及其他相关控件的关键代码分析 245
16.8 参数设置窗体的代码分析 247
16.9 程序测试 247
16.10 本章小结 248
第17章 通用TCP服务器 249
17.1 TcpListener类 249
17.2 自定义TCP_Server类 250
17.2.1 基本定义 250
17.2.2 构造函数和销毁函数 251
17.2.3 连接请求的处理 251
17.3 TCP服务器的窗体设计 252
17.4 需要的软件模块 253
17.5 窗体代码分析 253
17.6 程序测试 254
17.7 应用模型 255
17.8 本章小结 255
第18章 Web服务 256
18.1 什么是Web服务 256
18.2 Web服务的体系结构 256
18.3 Visual Web Developer 2008的开发环境 257
18.4 仿真开关量输入/输出模块 260
18.5 创建Web服务 261
18.5.1 用于仿真模块的声明 261
18.5.2 获取仿真模块的状态 262
18.5.3 控制仿真模块的输出开关 263
18.5.4 Web服务的测试 264
18.6 调用Web服务 265
18.6.1 准备工作 265
18.6.2 代码分析 265
18.6.3 程序测试 266
18.7 天气预报Web服务应用程序 267
18.7.1 准备工作 267
18.7.2 代码分析 268
18.7.3 程序测试 270
18.8 本章小结 271
参考文献 272