第一章 Visual FoxPro6.0界面 1
1.1 VFP6.0的集成开发环境 1
1.1.1 VFP6.0的集成开发环境简介 1
1.1.2 VFP6.0的主用户界面 2
1.1.3 系统菜单 2
1.1.4 VFP6.0的工具栏 11
1.2 控制窗口 21
1.2.1 缩放窗口 21
1.2.2 调整窗口的大小 21
1.2.3 移动窗口 21
1.3 项目管理器介绍 21
1.3.2 项目管理器按钮 22
1.3.1 项目管理器窗口 22
1.3.3 使用项目管理器 23
1.3.4 项目管理器的定制 24
1.4 设置配置选项 24
1.4.1 控件 选项 25
1.4.2 区域 选项 25
1.4.3 调试 选项 26
1.4.4 语法着色 选项 27
1.4.5 字段映像 选项 28
1.4.6 显示 选项 29
1.4.7 常规 选项 29
1.4.8 数据 选项 31
1.4.9 远程数据 选项 34
1.4.10 文件位置 选项 35
1.4.11 表单 选项 36
1.4.12 项目 选项 38
1.5 Visual FoxPro6.0系统的优化 39
1.5.1 优化Visual FoxPro系统 39
1.5.2 在多用户环境下优化Visual FoxPro6.0 40
1.6 小结 41
第二章Visual FoxPro6.0基本语言元素 42
2.1 数据类型 42
2.1.1 字符型(Character) 42
2.1.7 逻辑型(Logical) 43
2.1.6 常规型(General) 43
2.1.5 浮点型(Float)和数值型(Numeric) 43
2.1.4 双精度型(Double) 43
2.1.3 日期型(Date)和日期时间型(Date Time) 43
2.1.2 货币型(Currency) 43
2.1.8 备注型(Memo) 44
2.2 数据存储 45
2.2.1 变量 45
2.2.2 常量 48
2.2.3 数组 48
2.2.4 字段 50
2.2.5 记录 51
2.2.6 对象 51
2.2.7 运算符 51
2.2.8 表达式 53
2.2.10 NULL值 55
2.2.9 宏替换 55
2.3 VFP6.0基本语法结构 56
2.3.1 基本的赋值语句以及表达式 56
2.3.2 条件结构 57
2.3.3 循环结构 58
2.3.4 函数 58
2.4 过程和用户自定义函数 59
2.4.1 过程 59
2.4.2 自定义函数 61
2.5 小结 61
3.1 SQL语言 62
3.2 在VFP中查询 62
第三章 SQL命令和查询 62
3.3 SELECT-SQL命令 63
3.3.1 选定字段 63
3.3.2 指定结果集的位置 65
3.3.3 过滤结果集 66
3.3.4 将结果分组 66
3.3.5 联合 67
3.3.6 结果排序 68
3.4 ALTER TABLE-SQL命令 68
3.5 CREATE TABLE-SQL命令 71
3.6 CREATE CURSOR-SQL命令 72
3.7 DELETE-SQL命令 73
3.8 INSERT-SQL命令 73
3.10 SQL命令示例 74
3.9 UPDATE-SQL命令 74
3.10.1 创建表 75
3.10.2 向表中添加记录 75
3.10.3 修改表的结构 76
3.10.4 删除记录 76
3.10.5 查询记录 77
3.11 小结 77
第四章 面向对象的编程 79
4.1 面向对象的来源和优点 79
4.1.1 面向对象的来源 79
4.1.2 面向对象编程的优点 79
4.2 对象和类的基本概念 80
4.3 VFP类 81
4.2.2 类 81
4.2.1 对象 81
4.3.1 容器类 82
4.3.2 控件类 82
4.4 对象 82
4.4.1 对象的创建 82
4.4.2 为对象赋多个别名 83
4.4.3 释放对象 83
4.5 Visual FoxPro类的层次结构 84
4.5.1 容器类的构建 84
4.5.2 属性和方法 85
4.5.3 容器中对象的引用 86
4.6 使用代码创建子类 86
4.6.1 定义子类 87
4.6.3 向容器中加入对象 88
4.6.2 向类定义中加入新的属性 88
4.7 事件 89
4.8 对象的引用 90
4.8.1 使用对象数组 90
4.8.2 使用域变换运算符引用方法 92
4.9 自定义类的创建 93
4.10 类库的创建和使用 94
4.10.1 类库的创建 94
4.10.2 类库的使用 95
4.10.3 库中类定义的修改 95
4.10.4 类库中类定义的删除 96
4.11 小结 96
5.2 关系 97
5.2.1 一对一关系 97
5.1 数据库和表的概念 97
第五章 数据库、表和索引 97
5.2.2 一对多关系 98
5.2.3 多对多关系 98
5.3 创建和修改表 98
5.3.1 表设计器 98
5.3.2 创建一个新表 99
5.3.3 在新表中增加记录 105
5.3.4 修改表设计 109
5.3.5 使用“浏览”窗口 112
5.4 创建数据库的几个问题 114
5.4.1 使用数据字典功能 114
5.4.3 记录级限制 115
5.4.5 创建存储过程 115
5.4.2 字段级限制 115
5.4.7 定义连接 116
5.4.8 参照完整性的建立 116
5.4.6 创建本地视图 116
5.4.9 创建永久关系 117
5.4.10 确定表字段的规则 118
5.5 设计数据库 118
5.6 索引 120
5.6.1 选择索引类型 120
5.6.2 设置主索引、候选索引 121
5.6.3 设置普通索引 121
5.7 记录的处理 122
5.7.1 查找、标记及删除记录 122
5.7.2 借助过滤器选择并编辑记录 124
5.8 创建一个数据库的例子 128
5.8.1创建表结构 128
5.8.2 创建数据库 130
5.8.3 编辑表之间的关系 131
5.8.4 参照完整性的建立 133
5.9 浏览数据库和表 134
5.10 小结 135
6.1 表单的设计 136
6.1.1 使用表单向导设计表单 136
第六章 基本表单 136
6.1.2 使用表单设计器设计表单 142
6.2 表单的快速设计 143
6.3 表单的保存和运行 144
6.3.1 表单的保存 144
6.3.2 表单的运行 145
6.4 表单的定制 145
6.4.1 改变表单中文本的字体及大小 145
6.4.2 向表单中添加线条 146
6.4.3 向表单中添加形状 146
6.4.4 向表单中添加图形 147
6.4.5 设置表单的前景色和背景色 148
6.5 表单的属性 148
6.6 表单集的创建 149
6.7 在源代码中操作表单 149
6.7.3 释放表单 150
6.7.2 运行表单 150
6.8 小结 150
6.7.1 打开表单 150
第七章 创建数据环境 151
7.1 数据环境的设置 151
7.2 向数据环境中添加表或视图 152
7.3 移去数据环境中的表 153
7.4 为数据环境设置关系 154
7.5 在数据环境设计器中编辑关系 154
7.6 向表单中添加表字段 155
5.4.4 创建触发器 155
7.7 小结 158
第八章 表单的属性、事件和方法 159
8.1 表单的属性 159
8.1.1 设置表单属性 159
8.1.2 表单属性用法举例 161
8.1.3 _SCREEN系统内存变量 162
8.1.4 在设计时定义表单行为 162
8.1.5 LockScreen属性 163
8.2 事件 163
8.2.1 VFP对象操作的方法 164
8.2.2 VFP事件程序设计 164
8.2.3 在对象层次上引用对象 167
8.3.1 方法的调用 168
8.3 方法 168
8.3.2 对象方法的使用举例 170
8.3.3 新方法的创建 173
8.3.4 RETURN命令 175
8.3.5 方法中的错误处理 175
8.4 小结 177
第九章 控件 178
9.1 Visual FoxPro提供的控件 178
9.2 有关控件的基本操作 179
9.2.1 复制表单控件 179
9.2.2 删除表单控件 180
9.2.3 布局表单中的控件 180
9.2.4 设置Tab键次序 180
9.3.1标签控件 181
9.3 常用控件介绍 181
9.3.2 文本框控件 182
9.3.3 编辑框控件 182
9.3.4 命令按钮控件 183
9.3.5 命令按钮组控件 183
9.3.6 选项按钮组控件 184
9.3.7 复选框控件 185
9.3.8 组合框控件 185
9.3.9 列表框图控件 186
9.3.10 微调控件 186
9.3.11 表格控件 187
9.3.12 图像控件 187
9.3.13 计时器控件 188
9.3.14 页框控件 189
9.3.15 OLE容器控件 190
9.3.16 OLE绑定型控件 191
9.3.17 线条控件 191
9.3.18 形状控件 191
9.3.19 容器控件 192
9.4 使用控件举例 192
9.5 为控件设置访问键 197
9.6 设置工具提示文本 197
9.7 设置命令按钮组中按钮的有效性 197
9.8 小结 198
10.1 使用 查询设计器 199
10.1.1 选择包含在查询中的字段 199
第十章 查询的创建 199
10.1.2 在 查询设计器”窗口中定义条件 201
10.1.3 保存查询 202
10.1.4 加入规则并建立“与”条件 203
10.1.5 撤消规则和建立“OR”条件 204
10.1.6 对查询结果进行排序 204
10.2 查询结果的输出 205
10.2.1 输出到“浏览”窗口 206
10.2.2 输出到“临时表” 206
10.2.3 输出到表 206
10.2.4 输出到图形 207
10.2.5 输出到屏幕 207
10.2.6 输出到报表 208
10.2.7 输出到标签 209
10.3 “查询设计器”和手工创建的SQL SELECT语句 209
10.4 生成视图 211
10.4.1 为视图生成计算字段 211
10.4.2 将视图结果排序及保存视图 212
10.5 创建复杂的查询 213
10.5.1 使用多重表查询 213
10.5.2 范围条件 215
10.6 小结 217
第十一章 报表和邮政标签的设计 218
11.1 设计和修改报表 218
11.1.1 查看报表并检查其设计 218
11.1.2 生成快速报表 219
11.1.3 优化“报表生成器”窗口 220
11.1.4 放大带区和移动文本对象 221
11.1.5 报表控件工具栏 223
11.2 保存和打印报表 226
11.2.1 保存报表 226
11.2.2 打印报表 226
11.3 增强报表功能 227
11.3.1 格式化计算字段 227
11.3.2 增加报表带区并放置计算字段 228
11.3.3 画长方形和直线 230
11.3.4 在“页标头”带区加标题 231
11.4 使用“报表向导” 232
11.5.1 确定邮政标签的数据源 235
11.5 生成邮政标签 235
11.5.2 用“快速报表”放置对象 236
11.5.3 定制标签布局 237
11.6 小结 238
第十二章 菜单和工具栏 239
12.1 创建菜单系统 239
12.1.1 规划菜单系统 239
12.1.2 创建图形化的菜单界面 240
12.1.3 菜单操作的其他一些说明 243
12.1.4 实现具体功能 245
12.1.5 预览菜单 248
12.1.6 生成菜单程序 248
12.1.7 生成的菜单代码 249
12.2 创建工具栏 250
12.1.8 常规选项 250
12.1.9 菜单选项 250
12.2.1 创建工具栏 251
12.2.2 将工具栏连接到表单 252
12.3 协调菜单和用户自定义工具栏 255
12.4 小结 255
第十三章 编程结构 256
13.1 建立逻辑表达式 256
13.1.1 比较两个值 256
18.2 数据库文件与记录的加锁与解锁 258
13.1.2 建立复合逻辑表达式 259
13.1.3 确定逻辑表达式的运算顺序 261
13.1.4 简化逻辑表达式 262
13.2 条件结构 263
13.2.1 DOCASE...ENDCASE结构 265
13.2.2 何时使用IF...ENDIF或者DO CASE...ENDCASE 266
13.3 简单的循环结构 266
13.3.1 DO WHILE...ENDDO结构 267
13.3.2 FOR...ENDFOR结构 268
13.3.3 SCAN...ENDSCAN结构 269
13.4 执行外部程序 270
13.4.1 用DO命令执行外部程序 271
13.4.2 使用SET PROCEDURE TO 272
13.4.3 使用SET LIBRARY TO 273
13.5 小结 274
14.2 使用“类设计器” 275
第十四章 深入探讨面向对象技术 275
14.1 尽量利用继承性 275
14.3 开发应用程序框架的技术 276
14.3.2 在控件中加入调试代码 277
14.3.3 在对象中包含外部文件 277
14.3.1 类设计器 277
14.3.4 用属性和方法扩展框架 279
14.4 保护属性和方法 279
14.5 使用通用代码开发对象 280
14.6 使用FoxPro存取变量来引用对象 281
14.7 设置类信息 282
14.8 扩展FoxPro开发环境 283
14.8.1 指定缺省类库 284
14.8.2 指定一个模板表单 285
14.9 使用“类浏览器” 285
14.10 建立自己的OLE服务器 286
14.11 将框架扩展到事件的世界中 289
14.11.1 确定常见的控件事件和它们的顺序 290
14.11.2 使用事件跟踪 290
14.11.3 理解事件的等级 292
14.12 小结 292
第十五章 将应用程序部件组织成项目 293
15.1 熟悉“项目管理器” 293
15.1.1 使用大纲控件 293
15.1.2 创建新文件和把文件加入项目 295
15.1.3 删除文件 296
15.1.4 修改已存在的项目元素 296
15.2 将“项目管理器”用作应用程序界面 297
15.2.1 从“项目管理器”运行程序和表单 297
15.2.3 打开数据库和浏览表 298
15.2.2 预览报表 298
15.2.4 拖放项目元素 299
15.3 在“项目管理器”中使用快捷方式 300
15.3.1 将标签作为访问主要类目的快捷方式 300
15.3.2 折叠和停靠“项目管理器” 301
15.3.3 使用“项目信息”对话框 302
15.4 建立Visual FoxPro的.APP和.EXE文件 304
15.4.1 设置一个主文件 306
15.4.2 在.APP和.EXE中包括和排除文件 306
15.4.3 从“命令”窗口建立项目 306
15.4.4 建立安装程序 307
15.5 小结 308
16.1常用术语 309
第十六章 访问远程数据资源 309
16.2 操作模式 310
16.3 分担工作量 310
16.4 设置ODBC 310
16.5 与服务器连接 312
16.5.1 使用连接句柄 313
16.5.2 连接设计器 313
16.5.3 改变连接特性 314
16.6 远程视图 314
16.6.1 远程视图向导 314
16.6.2 将数据从远程数据源复制到本地表中 317
16.7 SQL Pass-Though函数 318
16.8.2 批操作与非批操作 319
16.8 检索多重结果集 319
16.8.1 同步模式和异步模式 319
16.8.3 模式比较 320
16.9 优化查询 321
16.9.1 优化数据检索 321
16.9.2 更新远程表 323
16.10 数据转换 324
16.11 小结 325
第十七章 调试Visual FoxPro应用程序 326
17.1 开发测试 326
17.1.1 测试命令 326
17.1.2 避免编写代码 327
17.1.3 让FoxPro生成代码 328
17.1.4 防错程序设计 328
17.1.5 使用WAIT WINDOW和MessageBox()函数 329
17.1.6 利用编译指令来管理代码 330
17.1.7 使用“显示”窗口 331
17.2 代码模块化以减少错误 331
17.3 正确的参数传递 334
17.4 消除多点退出和返回 335
17.5 开发测试例行程序库和对象库 337
17.6 处理文件崩溃 338
17.7 设计测试计划 340
17.7.1 数据驱动和逻辑驱动的测试 340
17.7.2 定义测试技术 341
17.7.3 创建测试环境 342
17.7.4 测试准则 343
17.8 跟踪错误的方法 343
17.8.1 在“命令”窗口中测试错误 345
17.8.2 加入WAIT窗口或其他打印输出 345
17.8.3 “跟踪”窗口 346
17.8.4 其他窗口 350
17.8.5 事件跟踪 351
17.9 使用错误处理程序 352
17.10 使用对象中的错误事件 354
17.11 小结 356
第十八章 Visual FoxPro的网络功能 357
18.1 网络中数据库文件的独占和共享 357
18.2.1 自动加锁 359
18.2.2 数据库文件和记录的人工加锁 360
18.2.3 数据库文件和记录的解锁 361
18.2.4 显示和获取数据库文件或记录的锁定状态 362
18.3 多用户环境下的参数设置命令 363
18.4 多用户环境下的编程和性能优化 365
18.5 小结 367
附录一 表单属性 368
附录二 Visual FoxPro的常用对象事件 398
附录三 Visual FoxPro的对象方法 423
附录四 Visual FoxPro命令集 442
附录五 Visual FoxPro函数集 452