第1篇 Visual Basic基础篇
第1章 认识Visual Basic 3
1.1 Visual Basic概述 4
1.1.1 Visual Basic发展历程 4
1.1.2 Visual Basic 6.0版本介绍 4
1.2 Visual Basic 6.0安装 5
1.2.1 硬件要求 5
1.2.2 软件要求 5
1.2.3 Visual Basic 6.0企业版+SP5的安装与卸载 5
1.3 Visual Basic 6.0启动 7
1.4 Visual Basic 6.0集成开发环境 8
1.4.1 集成开发环境概述 8
1.4.2 开发环境的组成 8
1.4.3 定制自己的开发环境 15
1.5 Visual Basic 6.0的帮助系统 18
1.5.1 MSDN Library的使用 18
1.5.2 上下文帮助 19
1.5.3 自定义MSDN Library 19
1.5.4 微软网上编程资源 20
1.6 MSDN Library提供的开发资源 21
1.6.1 利用附带的实例源程序学习编程 21
1.6.2 学习可视化数据管理器的源程序 22
1.7 Visual Basic应用程序的基本设计步骤 23
1.7.1 创建工程 24
1.7.2 创建窗体 24
1.7.3 设计程序界面 24
1.7.4 编写代码 25
1.7.5 程序运行 25
1.7.6 保存工程 25
1.7.7 生成可执行文件 26
第2章 Visual Basic语言基础 27
2.1 程序设计的基本概念 28
2.1.1 关键字 28
2.1.2 标识符 28
2.1.3 ASCII字符集 28
2.2 数据类型 28
2.2.1 基本数据类型 28
2.2.2 枚举型数据类型 29
2.2.3 自定义数据类型 30
2.3 声明和使用常量 31
2.3.1 局部常量的声明 31
2.3.2 局部常量的使用 32
2.3.3 模块级常量的声明 32
2.3.4 模块级常量的使用 32
2.3.5 公用常量的声明 33
2.3.6 公用常量的使用 33
2.4 声明和使用变量 33
2.4.1 变量的声明方式 34
2.4.2 局部变量的声明 34
2.4.3 局部变量的使用 34
2.4.4 模块级变量的声明 35
2.4.5 模块级变量的使用 35
2.4.6 公用变量的声明 35
2.4.7 公用变量的使用 35
2.4.8 Option Explicit语句 36
2.5 Visual Basic中的运算符 37
2.5.1 赋值运算符 37
2.5.2 Like运算符 37
2.5.3 算数运算符 38
2.5.4 关系运算符 39
2.5.5 逻辑运算符 39
2.5.6 字符串运算符 40
2.6 Visual Basic中的表达式 41
2.6.1 表达式的组成 41
2.6.2 表达式的书写规则 41
2.6.3 运算符在表达式中的优先级 41
2.7 程序编写规范 42
2.7.1 代码书写规则 42
2.7.2 对象、常量、变量及过程的命名约定与规范 44
2.7.3 #注释编码的标准化格式 45
2.7.4 空格、格式化及缩排的准则 46
第3章 控制结构与算法 47
3.1 顺序结构 48
3.2 选择结构 48
3.2.1 If...Then语句 48
3.2.2 If...Then...Else语句 49
3.2.3 If...Then...ElseIf语句 50
3.2.4 IIf函数 51
3.2.5 If语句的嵌套 52
3.3 多分支选择结构 52
3.3.1 Select Case语句 53
3.3.2 Is、To等关键字在Select Case语句中的使用 53
3.3.3 Select Case语句的典型应用 55
3.4 循环结构 56
3.4.1 While...Wend语句 56
3.4.2 For...Next语句 57
3.4.3 For Each...Next语句 57
3.4.4 循环嵌套 58
3.4.5 循环结构语句的常用算法 58
3.5 Do...Loop循环结构 60
3.5.1 While当型循环语句 61
3.5.2 Until直到型循环语句 61
3.5.3 Exit Do型循环语句 62
3.6 其他控制语句 63
3.6.1 GoTo语句 63
3.6.2 Exit语句 63
3.6.3 End语句 64
3.6.4 With语句 65
第1篇 Visual Basic基础篇
第1章 认识Visual Basic 3
1.1 Visual Basic概述 4
1.1.1 Visual Basic发展历程 4
1.1.2 Visual Basic 6.0版本介绍 4
1.2 Visual Basic 6.0安装 5
1.2.1 硬件要求 5
1.2.2 软件要求 5
1.2.3 Visual Basic 6.0企业版+SP5的安装与卸载 5
1.3 Visual Basic 6.0启动 7
1.4 Visual Basic 6.0集成开发环境 8
1.4.1 集成开发环境概述 8
1.4.2 开发环境的组成 8
1.4.3 定制自己的开发环境 15
1.5 Visual Basic 6.0的帮助系统 18
1.5.1 MSDN Library的使用 18
1.5.2 上下文帮助 19
1.5.3 自定义MSDN Library 19
1.5.4 微软网上编程资源 20
1.6 MSDN Library提供的开发资源 21
1.6.1 利用附带的实例源程序学习编程 21
1.6.2 学习可视化数据管理器的源程序 22
1.7 Visual Basic应用程序的基本设计步骤 23
1.7.1 创建工程 24
1.7.2 创建窗体 24
1.7.3 设计程序界面 24
1.7.4 编写代码 25
1.7.5 程序运行 25
1.7.6 保存工程 25
1.7.7 生成可执行文件 26
第2章 Visual Basic语言基础 27
2.1 程序设计的基本概念 28
2.1.1 关键字 28
2.1.2 标识符 28
2.1.3 ASCII字符集 28
2.2 数据类型 28
2.2.1 基本数据类型 28
2.2.2 枚举型数据类型 29
2.2.3 自定义数据类型 30
2.3 声明和使用常量 31
2.3.1 局部常量的声明 31
2.3.2 局部常量的使用 32
2.3.3 模块级常量的声明 32
2.3.4 模块级常量的使用 32
2.3.5 公用常量的声明 33
2.3.6 公用常量的使用 33
2.4 声明和使用变量 33
2.4.1 变量的声明方式 34
2.4.2 局部变量的声明 34
2.4.3 局部变量的使用 34
2.4.4 模块级变量的声明 35
2.4.5 模块级变量的使用 35
2.4.6 公用变量的声明 35
2.4.7 公用变量的使用 35
2.4.8 Option Explicit语句 36
2.5 Visual Basic中的运算符 37
2.5.1 赋值运算符 37
2.5.2 Like运算符 37
2.5.3 算数运算符 38
2.5.4 关系运算符 39
2.5.5 逻辑运算符 39
2.5.6 字符串运算符 40
2.6 Visual Basic中的表达式 41
2.6.1 表达式的组成 41
2.6.2 表达式的书写规则 41
2.6.3 运算符在表达式中的优先级 41
2.7 程序编写规范 42
2.7.1 代码书写规则 42
2.7.2 对象、常量、变量及过程的命名约定与规范 44
2.7.3 #注释编码的标准化格式 45
2.7.4 空格、格式化及缩排的准则 46
第3章 控制结构与算法 47
3.1 顺序结构 48
3.2 选择结构 48
3.2.1 If...Then语句 48
3.2.2 If...Then...Else语句 49
3.2.3 If...Then...ElseIf语句 50
3.2.4 IIf函数 51
3.2.5 If语句的嵌套 52
3.3 多分支选择结构 52
3.3.1 Select Case语句 53
3.3.2 Is、To等关键字在Select Case语句中的使用 53
3.3.3 Select Case语句的典型应用 55
3.4 循环结构 56
3.4.1 While...Wend语句 56
3.4.2 For...Next语句 57
3.4.3 For Each...Next语句 57
3.4.4 循环嵌套 58
3.4.5 循环结构语句的常用算法 58
3.5 Do...Loop循环结构 60
3.5.1 While当型循环语句 61
3.5.2 Until直到型循环语句 61
3.5.3 Exit Do型循环语句 62
3.6 其他控制语句 63
3.6.1 GoTo语句 63
3.6.2 Exit语句 63
3.6.3 End语句 64
3.6.4 With语句 65
第4章 数组 67
4.1 数组的概念 68
4.2 静态数组与动态数组 68
4.2.1 静态数组的声明 68
4.2.2 静态数组的使用 69
4.2.3 动态数组的声明 69
4.2.4 动态数组的使用 69
4.3 一维数组 70
4.3.1 一维数组的声明 70
4.3.2 一维数组的使用 70
4.4 二维数组及多维数组 71
4.4.1 二维数组的声明 72
4.4.2 二维数组的使用 72
4.4.3 多维数组的声明 72
4.4.4 多维数组的使用 72
4.5 数组的基本操作 73
4.5.1 数组的输入 73
4.5.2 数组的输出 73
4.5.3 数组的插入 73
4.5.4 数组的删除 74
4.5.5 数组的查找 74
4.5.6 数组的排序 75
4.6 记录数组 76
4.6.1 记录数组的概念 76
4.6.2 记录数组的使用 76
4.7 控件数组 76
4.7.1 控件数组的概念 76
4.7.2 创建控件数组 77
4.7.3 使用控件数组 77
4.7.4 动态添加控件 77
4.8 与数组相关的函数及语句 78
4.8.1 Array函数 79
4.8.2 UBound函数和LBound函数 79
4.8.3 Split函数 79
4.8.4 Option Base语句 80
第5章 过程与函数 81
5.1 过程的定义与调用 82
5.1.1 Sub过程定义与调用 82
5.1.2 Function过程定义与调用 83
5.1.3 Sub过程和Function过程的区别 84
5.1.4 Property属性过程和Event事件过程 84
5.1.5 自定义Function函数过程和Sub过程的典型应用 85
5.2 参数传递 89
5.2.1 形参与实参 89
5.2.2 按值和按址传递 89
5.2.3 过程的可选参数和可变参数 90
5.2.4 数组参数 91
5.2.5 对象参数 91
5.2.6 参数传递的典型应用 91
5.3 过程的嵌套与递归调用 92
5.3.1 过程的嵌套调用 92
5.3.2 过程的递归调用 92
5.4 Sub Main过程 92
5.5 过程的作用域 93
5.6 使用内部函数 93
5.6.1 数学函数 93
5.6.2 字符串函数 94
5.6.3 转换函数 94
5.6.4 判断函数 95
5.6.5 日期和时间函数 95
5.6.6 格式化函数 96
5.6.7 Shell函数 98
第2篇 用户界面设计篇
第6章 窗体和系统对象 101
6.1 窗体概述 102
6.1.1 窗体的构成 102
6.1.2 窗体的类型 102
6.1.3 添加和删除窗体 103
6.2 窗体的属性 105
6.2.1 窗体的属性 105
6.2.2 设置窗体的标题 105
6.2.3 改变窗体边框的样式 106
6.2.4 更换窗体的图标 107
6.2.5 窗体的显示位置 108
6.2.6 为窗体添加背景图片 109
6.3 窗体的方法 110
6.3.1 窗体的加载与卸载 110
6.3.2 窗体的显示与隐藏 110
6.3.3 将数据输出到窗体上 111
6.3.4 打印窗体上的数据 112
6.4 窗体的事件 112
6.4.1 单击事件 112
6.4.2 双击事件 112
6.4.3 载入事件 113
6.4.4 卸载事件 114
6.4.5 QueryUnload事件 114
6.5 MDI窗体界面设计 116
6.5.1 MDI窗体概述 116
6.5.2 MDI子窗体的特点 116
6.5.3 创建MDI窗体 117
6.5.4 创建MDI应用程序 117
6.6 系统对象 119
6.6.1 应用程序对象 119
6.6.2 屏幕对象 122
6.6.3 剪贴板对象 122
第7章 控件 127
7.1 控件概述 128
7.1.1 控件的作用 128
7.1.2 控件与对象的关系 128
7.1.3 控件的属性、方法和事件 128
7.2 控件分类 129
7.2.1 Windows标准控件 129
7.2.2 ActiveX控件 129
7.2.3 可插入对象 129
7.3 控件的相关操作 129
7.3.1 向窗体上添加控件 129
7.3.2 对齐控件 130
7.3.3 调整控件的前后顺序 131
7.3.4 锁定控件 132
7.3.5 删除控件 132
7.3.6 恢复被删除的控件 132
7.3.7 添加ActiveX控件 133
7.3.8 注册ActiveX控件 134
7.4 常用控件 134
7.4.1 Label控件 134
7.4.2 TextBox控件 138
7.4.3 CommandButton控件 141
7.4.4 OptionButton控件 143
7.4.5 CheckBox控件 145
7.4.6 Timer控件 146
7.4.7 ListBox控件 147
7.4.8 ComboBox控件 151
7.4.9 ListBox、ComboBox控件的典型应用 155
7.5 高级控件 156
7.5.1 MaskEdBox控件 156
7.5.2 RichTextBox控件 157
7.5.3 DateTimePicker控件 162
7.5.4 MonthView控件 164
7.5.5 SSTab控件 166
7.5.6 ListView控件 168
7.5.7 TreeView控件 172
7.5.8 ProgressBar控件 175
7.5.9 Slider控件 177
7.5.10 OLE容器控件 179
7.5.11 RichTextBox控件的典型应用 182
7.5.12 ListView、TreeView控件的典型应用 183
第8章 菜单、工具栏与状态栏设计 185
8.1 菜单设计基础 186
8.1.1 菜单基本概念 186
8.1.2 菜单的组成 186
8.1.3 菜单编辑器的使用 187
8.1.4 设置菜单的快捷键与访问键 190
8.1.5 创建复选菜单 190
8.1.6 创建级联菜单 190
8.1.7 修饰菜单 191
8.2 弹出式菜单 192
8.2.1 弹出式菜单概述 192
8.2.2 弹出式菜单的设计 192
8.2.3 弹出式菜单的调用 192
8.2.4 弹出式菜单的应用举例 193
8.3 菜单的编程 193
8.3.1 为菜单事件过程添加代码 193
8.3.2 运行时改变菜单状态 194
8.3.3 运行时增减菜单项 194
8.3.4 菜单数组的应用 195
8.3.5 分栏菜单的设计 196
8.3.6 图形菜单设计 197
8.4 工具栏的创建与设计 199
8.4.1 工具栏简介 199
8.4.2 利用Toolbar控件创建工具栏 199
8.4.3 为工具栏按钮设置分组 201
8.4.4 为工具栏添加下拉菜单 202
8.4.5 给工具栏按钮增加事件处理代码 203
8.4.6 利用CoolBar控件制作工具栏 204
8.5 状态栏的创建与设计 205
8.5.1 状态栏简介 205
8.5.2 设计状态栏 205
8.5.3 在状态栏中添加日期时间 205
8.5.4 在状态栏中显示系统登录操作员信息 206
8.5.5 在状态栏中显示鼠标位置 208
8.5.6 在状态栏中显示当前状态信息 208
8.5.7 在状态栏中显示当前操作窗体的名称 209
第9章 对话框 211
9.1 输入对话框 212
9.2 消息对话框 213
9.3 自定义对话框 214
9.3.1 由普通窗体创建的自定义对话框 214
9.3.2 使用对话框模板创建的对话框 215
9.3.3 显示与关闭自定义的对话框 215
9.4 公用对话框 216
9.4.1 “打开”对话框 216
9.4.2 “另存为”对话框 217
9.4.3 “颜色”对话框 218
9.4.4 “字体”对话框 218
9.4.5 “打印”对话框 219
9.4.6 “帮助”对话框 220
第10章 鼠标键盘处理技术 221
10.1 鼠标的基本操作 222
10.1.1 定义鼠标指针形状 222
10.1.2 定义鼠标为指定的图片 223
10.1.3 定义鼠标为指定的动画图标 223
10.2 关于鼠标事件的响应 224
10.2.1 Click和DblClick事件 224
10.2.2 MouseDown和MouseUp事件 226
10.2.3 MouseMove事件 227
10.2.4 控制鼠标操作 227
10.3 读取和判断键盘输入 229
10.3.1 ASCII字母键码表 229
10.3.2 KeyDown与KeyUp事件 229
10.3.3 KeyPress事件 235
10.3.4 KeyPreview属性 236
10.4 使用键盘热键 236
10.5 键盘消息的响应 237
10.6 拖放技术 237
10.6.1 与拖放有关的属性、事件和方法 238
10.6.2 启动自动拖放模式 240
10.6.3 改变拖动图标 240
10.6.4 放下对象时的响应 240
10.6.5 启动拖动或停止拖动时的控制 241
10.6.6 改变控件的位置 241
10.6.7 拖放技术的典型应用 241
第3篇 文件、图形与多媒体篇
第11章 文件处理技术 245
11.1 文件的概念 246
11.2 文件的结构和类型 246
11.2.1 文件的结构 246
11.2.2 文件的分类 246
11.3 文件处理的一般步骤 248
11.4 顺序文件 248
11.4.1 打开顺序文件 248
11.4.2 读取顺序文件 249
11.4.3 写入顺序文件 251
11.4.4 关闭顺序文件 252
11.5 随机文件 253
11.5.1 随机文件的打开和关闭 253
11.5.2 读取随机文件 253
11.5.3 写入随机文件 254
11.6 二进制文件 255
11.6.1 二进制文件的打开和关闭 255
11.6.2 二进制文件的读写操作 255
11.7 文件系统控件 256
11.7.1 驱动器列表框(DriveListBox) 257
11.7.2 目录列表框(DirListBox) 259
11.7.3 文件列表框(FileListBox) 261
11.7.4 文件系统控件的联动 266
11.8 常用的文件操作语句和函数 267
11.8.1 文件操作语句 267
11.8.2 文件操作函数 270
11.9 文件系统对象 273
11.9.1 FSO对象模型 273
11.9.2 FileSystemObject对象 274
11.9.3 Drive对象及磁盘驱动器的操作 275
11.9.4 Folder对象与文件夹的浏览 277
11.9.5 File对象与文件的操作 278
11.9.6 TextStream对象与文件的读写 278
第12章 图形处理技术 281
12.1 图形处理的基础知识 282
12.2 Visual Basic的坐标系统 283
12.2.1 默认坐标系统 283
12.2.2 用户自定义坐标系统 284
12.3 图形控件 286
12.3.1 Shape控件 286
12.3.2 Line控件 286
12.4 图形属性 287
12.4.1 CurrentX属性和CurrentY属性 287
12.4.2 Left和Top,Height和Width属性 288
12.4.3 BorderStyle、BorderWidth和BorderColor属性 289
12.4.4 DrawWidth、DrawStyle和DrawMode属性 291
12.4.5 BackColor和ForeColor属性 293
12.4.6 FillColor和FillStyle属性 294
12.5 图形方法 295
12.5.1 使用Pset方法画点 295
12.5.2 使用Line方法画线 296
12.5.3 使用Circle方法画圆 297
12.5.4 使用PaintPicture方法绘制图像 298
12.5.5 使用Point方法返回指定点的颜色 299
12.5.6 使用Cls方法清屏 300
12.5.7 图形方法和图形控件的比较 301
12.6 利用API函数绘制几何图形 301
12.6.1 绘制弧线(Arc函数) 301
12.6.2 绘制圆和椭圆(Ellipse函数) 302
12.6.3 绘制多边形函数(Polygon函数) 303
12.6.4 绘制矩形函数(Rectangle函数) 303
第13章 图像技术应用 305
13.1 图形和图像之间的区别与联系 306
13.2 图像控件 306
13.2.1 PictureBox控件 306
13.2.2 Image控件 307
13.3 图像的保存与读取 308
13.3.1 SavePicture语句 308
13.3.2 LoadPicture函数 309
13.4 图像文件格式转换 310
13.4.1 图像文件格式介绍 310
13.4.2 将彩色图片转换为灰度图片 310
13.4.3 图像格式的转换 312
13.5 图像的相关操作 314
13.5.1 图像的剪切 314
13.5.2 图像的合成 315
13.6 图像的特殊效果 317
13.6.1 图像的滚动效果 317
13.6.2 图像的雨滴效果 318
13.6.3 图像的平铺效果 319
13.7 图像的典型应用 320
13.7.1 在图像上书写文字 320
13.7.2 提取图片中的对象 322
13.7.3 屏幕抓图 322
13.7.4 图片的分类存储 324
第14章 多媒体技术 327
14.1 多媒体概述及其元素 328
14.2 文字处理 328
14.2.1 滚动文字 328
14.2.2 彩虹文字 329
14.2.3 动画文字 330
14.3 音频处理 333
14.3.1 MMControl控件 333
14.3.2 播放MIDI和WAV文件 338
14.3.3 播放MP3文件 340
14.4 视频处理 341
14.4.1 利用MMControl控件播放AVI 341
14.4.2 播放VCD 343
14.5 动画处理 344
14.5.1 Animation控件 344
14.5.2 ShockwaveFlash控件 346
14.5.3 Flash浏览器 349
14.5.4 播放GIF动画 350
14.5.5 制作自己的动画 350
14.6 API函数在多媒体中的应用 351
14.6.1 利用sndPlaySound函数播放音频文件 351
14.6.2 利用mciExecute函数播放WAV文件 352
14.6.3 利用mciSendString函数制作动画播放器 354
14.6.4 其他控制多媒体的API函数 356
第4篇 数据库编程技术篇
第15章 数据库的安装与创建 361
15.1 Access数据库 362
15.1.1 安装Access数据库 362
15.1.2 创建Access数据库 365
15.1.3 创建Access数据表 366
15.2 SQL Server数据库 367
15.2.1 安装SQL Server 367
15.2.2 启动SQL Server服务管理器 371
15.2.3 创建SQL Server数据库 371
15.2.4 创建SQL Server数据表 373
第16章 SQL语句在Visual Basic中的应用 375
16.1 SQL语言简介 376
16.2 SELECT子句 376
16.2.1 选择所有列 377
16.2.2 选择部分列 378
16.2.3 使用列别名 379
16.3 WHERE子句 380
16.3.1 用WHERE子句定义查询条件 380
16.3.2 使用比较运算符 381
16.3.3 查询介于某一范围的数据 382
16.3.4 模糊查询 383
16.3.5 列表运算符查询 384
16.3.6 查询空数据 385
16.4 查询结果的处理 386
16.4.1 限制结果集返回的行数 386
16.4.2 对查询结果排序 386
16.4.3 去掉查询结果中的重复记录 388
16.4.4 合并查询 388
16.5 查询控件 389
16.5.1 查询数值型数据 389
16.5.2 查询字符型数据 389
16.5.3 查询日期型数据 390
16.6 连接查询 390
16.6.1 等值连接 390
16.6.2 内连接 391
16.6.3 外连接 392
16.7 分组查询及统计 392
16.8 交叉表查询 394
16.9 数据添加、修改和删除 395
16.9.1 添加数据 395
16.9.2 修改数据 398
16.9.3 删除数据 401
16.10 使用SQL语句维护数据库 402
16.10.1 创建、修改和删除数据库 402
16.10.2 创建、修改和删除数据表 405
16.10.3 数据库备份与恢复 408
16.10.4 附加和分离数据库 410
第17章 DAO对象编程 413
17.1 DAO对象 414
17.1.1 数据库引擎对象DBEngine 414
17.1.2 数据工作空间对象WorkSpace 414
17.1.3 数据库对象Database 415
17.1.4 数据表对象TableDef与字段对象Field 417
17.1.5 数据记录集对象 419
17.1.6 数据查询对象 420
17.2 打开与关闭数据库 420
17.2.1 引用数据库引擎动态链接库 420
17.2.2 打开数据库 421
17.2.3 关闭数据库 421
17.3 利用记录集(Recordset)对象操作数据库 421
17.3.1 创建并打开Recordset对象 421
17.3.2 浏览数据记录 422
17.3.3 增加、修改和删除数据表中的记录 423
17.3.4 查询数据表中的记录 425
17.4 TableDef、Field、QueryDef对象的使用 426
17.4.1 利用TableDef对象创建表 426
17.4.2 利用Field对象设计字段 426
17.4.3 利用QueryDef对象进行数据查询操作 426
第18章 ADO数据库编程 429
18.1 ADO概述 430
18.2 ADO对象概述 431
18.2.1 连接数据源——Connection对象 431
18.2.2 记录集对象——Recordset对象 434
18.2.3 命令对象——Command对象 440
18.2.4 字段对象——Field对象 441
18.2.5 二进制数据——Stream对象 442
18.2.6 Parameter对象 444
18.2.7 利用Record对象操作数据表 444
18.2.8 利用Err对象显示错误信息 445
18.3 用ADO对象连接数据库 446
18.3.1 使用ADO连接Access 446
18.3.2 使用ADO对象连接SQL Server数据库 446
18.4 使用ADO对象编辑数据记录 448
18.4.1 增加数据记录 448
18.4.2 修改数据记录 453
18.4.3 删除数据记录 457
18.4.4 使用事务 458
18.5 使用ADO对象查询数据记录 459
18.5.1 使用MoveFirst、MoveLast、MoveNext和MovePrevious浏览记录 459
18.5.2 使用Recordset对象的Find方法查询记录 461
18.5.3 用Connection对象运行查询语句 464
18.5.4 用Command对象执行SQL语句(执行带参数的SQL语句) 465
18.5.5 使用Filter属性查找数据记录 466
18.6 ADO对象的典型应用 468
18.6.1 获取SQL Server服务器中的所有数据库 471
18.6.2 使用Openschema方法读取数据库结构 472
18.6.3 获取表中字段 472
18.7 ADO事件 474
18.7.1 Connection对象的事件 474
18.7.2 Recordset对象的事件 474
第19章 数据控件编程 475
19.1 Data控件 476
19.1.1 引入Data控件到工程中 476
19.1.2 Data控件的主要属性、事件和方法 476
19.1.3 使用Data控件连接数据库 480
19.1.4 使用Data控件增加、修改和删除记录 481
19.1.5 使用Data控件查询记录 483
19.2 ADO控件 484
19.2.1 引入ADO控件到工程中 485
19.2.2 ADO控件的主要属性、事件和方法 485
19.2.3 使用ADO控件连接数据库 488
19.2.4 使用AddNew方法增加数据记录 490
19.2.5 使用Update方法修改数据记录 491
19.2.6 使用Delete方法删除数据记录 491
19.2.7 使用RecordSource属性查询记录 492
19.3 RDO控件(远程数据控件) 492
19.3.1 引入RDO控件到工程中 492
19.3.2 RDO控件与数据访问有关的属性 492
19.3.3 使用RDO控件连接远程数据库 494
19.4 DBList、DBCombo和DBGrid控件 495
19.4.1 引入DBList、DBCombo和DBGrid控件到工程中 495
19.4.2 DBList、DBCombo和DBGrid控件的主要属性、方法和事件 496
19.4.3 用DBList、DBCombo和DBGrid控件显示数据表中的数据 500
19.5 DataCombo控件和DataList控件 501
19.5.1 引入DataCombo和DataList控件到工程中 501
19.5.2 DataCombo控件和DataList控件的主要属性、方法和事件 501
19.5.3 在DataCombo控件中显示数据 505
19.5.4 在DataList控件中显示数据 505
19.5.5 使用DataCombo和DataList控件显示关系表中的数据 506
19.6 DataGrid控件 507
19.6.1 引入DataGrid控件到工程中 507
19.6.2 DataGrid控件的主要属性、方法和事件 508
19.6.3 用DataGrid控件显示数据表中的数据 510
19.6.4 通过DataGrid控件增加、修改和删除数据 510
19.7 MSFlexGrid控件和MSHFlexGrid控件 512
19.7.1 MSFlexGrid控件和MSHFlexGrid控件的功能比较 512
19.7.2 MSHFlexGrid控件的主要属性、方法和事件 512
19.7.3 使用MSHFlexGrid控件显示数据 516
19.7.4 使用MSHFlexGrid控件批量录入数据 516
19.7.5 使用MSHFlexGrid控件对数据进行合并和排序 518
19.7.6 使用MSHFlexGrid控件显示层次结构数据 520
第20章 高性能数据处理技术 523
20.1 存储过程概述 524
20.2 存储过程的新建、修改和删除 524
20.2.1 新建存储过程 524
20.2.2 修改存储过程 526
20.2.3 删除存储过程 527
20.3 在Visual Basic中调用存储过程 528
20.4 视图概述 529
20.5 视图的新建、修改和删除 530
20.5.1 新建视图 530
20.5.2 修改视图 532
20.5.3 删除视图 533
20.6 使用视图 533
20.7 使用触发器 534
20.8 使用游标 536
第5篇 图表、报表及打印篇
第21章 图表技术 543
21.1 图表的基本用法 544
21.1.1 认识MSChart控件 544
21.1.2 图表的组成 544
21.1.3 通过“属性页”设置图表外观 545
21.1.4 MSChart控件的属性、方法和事件 545
21.2 图表的相关对象 558
21.2.1 MSChart控件的对象 558
21.2.2 设置图表区字体 560
21.2.3 填充图表元素的颜色 560
21.2.4 设置图表比例 561
21.3 图表与数据的关联 562
21.3.1 与数组关联 562
21.3.2 与数据源关联 563
21.3.3 与记录关联 564
21.4 不同类型图表的典型应用 565
21.4.1 条形图表分析公司年销售业绩 565
21.4.2 对比图表分析 566
21.4.3 折线图表分析产品价格趋势 567
21.4.4 饼型图表分析市场占有率 568
21.4.5 三维图表实例 569
21.4.6 根据查询结果显示图表 570
第22章 数据环境设计器 573
22.1 添加数据环境对象 574
22.2 Connection对象 575
22.2.1 添加Connection对象 575
22.2.2 连接Connection对象 576
22.2.3 设置登录信息 577
22.2.4 设置连接信息 577
22.3 Command对象 578
22.3.1 创建一个Command对象 578
22.3.2 通过存储过程创建Command对象 580
22.3.3 Command层次结构 581
22.3.4 字段映射 586
22.4 数据环境设计器的典型应用 587
22.4.1 创建数据窗体 587
22.4.2 添加、修改和删除记录 588
22.4.3 移动记录 590
22.4.4 创建数据报表 591
第23章 数据报表技术 593
23.1 DataReport报表 594
23.1.1 数据报表设计器的功能 594
23.1.2 在工程中添加数据报表设计器 594
23.1.3 初识数据报表设计器 595
23.1.4 数据报表设计器的对象 596
23.1.5 DataReport对象的属性和方法 596
23.2 DataReport报表的典型应用 597
23.2.1 一个简单的报表 597
23.2.2 向报表中添加日期、时间、页码 599
23.2.3 分组统计报表 600
23.2.4 主明细报表 600
23.2.5 导出报表为HTML文件 604
23.3 Crystal Reports报表 605
23.3.1 安装Crystal Reports 606
23.3.2 用Crystal Reports创建一个报表 606
23.3.3 使用Crystal Reports设计商用报表 610
23.3.4 数据图表样式的报表 612
第24章 从应用程序中打印 615
24.1 使用PrintForm方法打印 616
24.2 使用Printers集合设置打印机 617
24.2.1 设置默认打印机 617
24.2.2 显示打印机的设备名称 617
24.3 使用Visual Basic打印机对象打印 618
24.3.1 Printer对象的主要属性 618
24.3.2 Printer对象的主要方法 624
24.4 其他打印方式 626
24.4.1 利用CommonDialog控件实现打印功能 626
24.4.2 通过Excel打印报表 628
24.4.3 通过Word打印报表 632
24.5 典型打印 635
24.5.1 通用打印过程 635
24.5.2 卡片式打印 638
24.5.3 打印图片 639
24.5.4 分页打印 641
24.5.5 连续打印 643
24.5.6 证书套打 646
24.6 捕获打印机错误 648
第6篇 网络通信篇
第25章 网络编程技术 651
25.1 TCP、UDP和IP协议 652
25.1.1 TCP协议 652
25.1.2 UDP协议 652
25.1.3 IP协议 653
25.2 Winsock控件 655
25.2.1 Winsock控件的属性、方法和事件 655
25.2.2 建立服务器/客户端的通信 662
25.2.3 建立点对点通信 663
25.3 Winsock控件的典型应用 665
25.3.1 下载HTML网页 665
25.3.2 利用Winsock控件实现端口扫描 666
25.3.3 开发服务器/客户端聊天程序 667
25.3.4 开发点对点实时聊天程序 668
25.3.5 开发多点聊天室 670
25.4 Winsock API函数 670
25.4.1 accept函数 671
25.4.2 bind函数 671
25.4.3 closesocket函数 671
25.4.4 connect函数 671
25.4.5 listen函数 671
25.4.6 recv函数 672
25.4.7 recvfrom函数 672
25.4.8 send函数 672
25.4.9 sendto函数 672
25.4.10 socket函数 673
25.4.11 shutdown函数 673
第26章 Internet编程技术 675
26.1 网络层次模型 676
26.1.1 OSI参考模型 676
26.1.2 TCP/IP体系结构 677
26.1.3 OSI参考模型与TCP/IP体系结构对照 678
26.2 应用层的有关协议 678
26.2.1 HTTP协议 678
26.2.2 FTP协议 679
26.3 Internet Transfer控件 679
26.3.1 Internet Transfer控件的属性、方法与事件 679
26.3.2 提取网页源码 687
26.3.3 获取网页中的内容 687
26.4 WebBrowser控件 688
26.4.1 引用WebBrowser控件 688
26.4.2 WebBrowser控件的属性和方法 688
26.4.3 建立基本的浏览器 692
26.4.4 完善简单浏览器 693
26.5 邮件发送与接收 694
26.5.1 Email概述 694
26.5.2 SMTP与发送电子邮件 694
26.5.3 POP3与接收电子邮件 696
26.5.4 MAPISession控件 697
26.5.5 MAPIMessages控件 699
26.5.6 邮件发送和接收程序的具体实现 704
26.5.7 邮件管理程序设计 705
26.5.8 在Visual Basic中使用OutLook发送电子邮件 707
26.6 API函数在Internet程序中的应用 708
26.6.1 利用API函数下载文件 708
26.6.2 加入收藏夹 708
26.6.3 网络映射 709
26.6.4 网站过滤器 710
第27章 数据通信技术 711
27.1 串口、并口通信概述 712
27.1.1 串口通信 712
27.1.2 并口通信 712
27.1.3 发送顺序 712
27.1.4 RS-232C标准接口 713
27.2 MSComm控件 713
27.2.1 MSComm控件的属性 713
27.2.2 MSComm控件的事件 722
27.2.3 利用MSComm控件实现串口通信 722
27.2.4 利用MSComm控件实现电话拨号 724
27.3 操作调制解调器 725
27.3.1 服务器应答概述 725
27.3.2 测试Modem状态 725
27.3.3 调用电话拨号程序 725
第7篇 Windows编程篇
第28章 WIN32 API 729
28.1 Windows API概述 730
28.1.1 什么是API 730
28.1.2 静态链接 730
28.1.3 动态链接库(DLL) 730
28.1.4 主要的动态链接库及功能 731
28.2 API相关概念 731
28.2.1 Win32 API相关概念 731
28.2.2 什么是句柄 731
28.2.3 窗口句柄 732
28.2.4 设备环境句柄 733
28.2.5 数据类型 733
28.3 Visual Basic与API 734
28.3.1 Visual Basic中API的声明 734
28.3.2 API 文本浏览器 734
28.3.3 把声明、常量或类型复制到Visual Basic代码中 737
28.4 Windows消息系统 739
28.4.1 什么是消息 739
28.4.2 Visual Basic事件与Windows消息 739
28.4.3 Windows消息应用 740
28.5 控件消息 741
28.5.1 与发送消息有关的函数 741
28.5.2 常用控件消息及程序举例 742
第29章 注册表 747
29.1 认识Windows注册表 748
29.1.1 什么是注册表 748
29.1.2 注册表的结构 748
29.2 利用Visual Basic函数(语句)访问注册表 751
29.3 利用API函数访问注册表 755
29.3.1 打开(创建)注册表项 755
29.3.2 删除注册表中的项 756
29.3.3 设置和删除注册表项的值 757
29.3.4 读取注册表中的默认值 758
29.3.5 读取注册表指定名称的值的数据 759
29.4 注册表相关技术典型应用 760
29.4.1 将应用软件的试用次数写入注册表 760
29.4.2 显示与隐藏 761
29.4.3 保护注册表 762
29.4.4 文件关联 763
29.4.5 应用软件设置 765
第8篇 程序的优化和发布篇
第30章 程序优化 769
30.1 代码优化 770
30.1.1 优化程序的速度 770
30.1.2 优化程序的大小 771
30.2 对象优化 771
30.3 应用程序的优化 772
30.4 Ocx控件的制作 774
30.4.1 创建“ActiveX控件”工程 774
30.4.2 添加控件并设计Ocx控件的外观 775
30.4.3 定制Ocx控件的属性、方法与事件 775
30.4.4 生成.ocx文件 775
30.4.5 Ocx控件的注册与使用 776
30.5 Com组件的制作 777
30.5.1 创建“ActiveX DLL”工程 777
30.5.2 编写Com组件的功能代码 777
30.5.3 生成“.dll”文件 779
30.5.4 Com组件的注册与使用 779
第31章 程序调试与错误处理 781
31.1 Visual Basic中的错误 782
31.1.1 编译错误 782
31.1.2 运行错误 782
31.1.3 逻辑错误 782
31.2 Visual Basic调试工具和方法 783
31.2.1 IDE选项 783
31.2.2 调试工具栏 783
31.2.3 本地窗口 783
31.2.4 立即窗口 784
31.2.5 监视窗口 784
31.2.6 Debug对象 785
31.2.7 Stop语句 786
31.3 错误处理语句和对象 786
31.3.1 Err对象 786
31.3.2 On Error语句 787
第32章 帮助文件 791
32.1 给控件添加提示信息 792
32.2 Win Help帮助文件 793
32.2.1 安装Microsoft Help Workshop 793
32.2.2 编辑RTF文件 793
32.2.3 制作帮助主题文件 795
32.2.4 制作.hlp帮助文件 797
32.2.5 在Visual Basic中使用帮助文件 798
32.3 HTML帮助文件 798
32.3.1 HTML帮助文件概述 798
32.3.2 安装Microsoft HTML Help Workshop 798
32.3.3 HTML帮助主题文件 799
32.3.4 HTML帮助项目文件 799
32.3.5 目录和目录文件 800
32.3.6 关键字和索引文件 800
32.3.7 制作.chm文件 800
32.3.8 与Visual Basic工程连接 805
第33章 应用程序的打包及安装 807
33.1 将应用工程打包 808
33.2 设计自定义风格的安装程序 810
33.3 安装应用程序 812
33.4 解决打包过程中的常见问题 812