第1篇 VFP 7.0基础 1
第1章 VFP 7.0概述 1
1.1 FoxPro系列的发展演变 1
1.2 VFP 7.0的新增功能 2
1.2.1 智能感知功能 2
1.2.2 IDE功能的增强 2
1.2.3 语言功能的增强 3
1.3 安装VFP 7.0 6
1.4 设置系统集成开发环境 7
2.1.1 菜单 14
2.1 VFP 7.0系统界面 14
第2章 VFP 7.0系统集成环境 14
2.1.2 窗口 15
2.1.3 对话框 15
2.2 使用菜单 16
2.2.1 File菜单 17
2.2.2 Edit菜单 19
2.2.3 View菜单 21
2.2.4 Format菜单 24
2.2.5 Tools菜单 27
2.2.6 Program菜单 33
2.2.7 Window菜单 34
2.2.8 Help菜单 35
第3章 VFP语言基础 37
3.1 数据类型 37
3.1.1 Character(字符烈) 37
3.1.2 Currency(货币型) 37
3.1.6 DateTime(日期时间型) 38
3.1.9 Logical(逻辑型) 38
3.1.7 Double(双精度浮点型) 38
3.1.8 Integer(整型) 38
3.1.5 Date(日期型) 38
3.1.4 Float(单精度浮点型) 38
3.1.3 Numeric(数值型) 38
3.1.10 Memo(备注型) 39
3.1.11 Memo(二进制备注型) 39
3.1.12 General(通用型) 39
3.1.13 Character(二进制字符型) 39
3.2 数据存储容器 40
3.2.1 常量 40
3.2.2 变量 41
3.2.3 数组 45
3.3.1 算术运算符 47
3.2.6 对象 47
3.3 运算符 47
3.2.4 字段 47
3.2.5 记录 47
3.3.2 字符运算符 48
3.3.3 日期时间运算符 48
3.3.4 逻辑运算符 49
3.3.5 关系运算符 49
3.3.6 类与对象运算符 49
3.4 表达式 50
3.4.1 算术表达式 50
3.4.2 字符表达式 50
3.4.3 日期表达式 50
3.4.6 宏替换表达式 51
3.4.4 逻辑表达式 51
3.4.5 名称表达式 51
3.5 函数和过程 52
3.5.1 VFP标准函数 52
3.5.2 自定义函数 56
3.5.3 过程 58
3.5.4 参数传递过程 60
3.6 命令结构 63
3.7 程序控制结构 64
3.7.1 顺序结构 64
3.7.2 分支结构 64
3.7.3 循环结构 67
第2篇 数据表操作 70
第4章 建立自由表 70
4.1 建立表结构 70
4.1.1 使用表设计器 70
4.1.2 使用SQL命令 71
4.2 修改表结构 72
4.2.1 使用表设计器 72
4.2.2 使用SQL命令 73
4.3 删除表 75
4.4 复制表 76
4.5 重命名表 77
4.6 建立样本表 78
第5章 表的操作 80
5.1 打开表 80
5.1.1 USE命令 80
5.1.2 工作区 80
5.2 输入记录 81
5.2.1 添加记录 82
5.2.2 插入记录 82
5.2.3 备注型数据的输入 83
5.2.4 通用型数据的输入 84
5.3 修改记录 85
5.3.1 REPLACE命令 85
5.3.2 UPDATE-SQL语句 86
5.4.1 逻辑删除记录 87
5.4 删除记录 87
5.4.2 物理删除记录 89
5.5 查找记录 89
5.5.1 记录的定位 89
5.5.2 顺序查找 91
5.5.3 记录过滤 92
5.5.4 索引查找 93
5.5.5 浏览记录 94
5.6 数据统计 94
5.6.3 求平均值命令 95
5.6.1 计数命令 95
5.6.2 求和命令 95
5.7 样本表数据 96
第6章 SELECT-SQL查询 98
6.1 SELECT-SQL语句格式 98
6.2 一般查询操作 100
6.2.1 列查询 100
6.2.2 行查询 102
6.3 显示和处理数值型值 105
6.4 显示和处理字符型值 109
6.5.1 日期显示 110
6.5 显示和处理日期型值 110
6.5.2 日期运算 111
6.6 输出查询结果 113
第7章 表的连接 114
7.1 表的一般连接形式 114
7.1.1 连接列 114
7.1.2 表的别名 115
7.2 等值连接和非等值连接 115
7.2.1 等值连接 115
7.2.2 比等值连接 118
7.3 自连接 120
7.4.2 右连接 122
7.4 外连接 122
7.4.1 左连接 122
7.4.3 完全连接 123
第8章 子查询 124
8.1 返回单个值的子查询 124
8.1.1 访问单个表的子查询 124
8.1.2 访问多个表的子查询 125
8.2 返回多个值的子查询 126
8.3 多个子查询 131
8.4 相关子查询 134
8.5 带EXIST测试的子查询 135
9.1.1 索引类型 137
9.1 索引类型和索引文件类型 137
第9章 索引 137
9.1.2 索引文件类型 138
9.2 建立索引文件 138
9.2.1 建立结构复合索引文件 139
9.2.2 建立独立复合索引文件 141
9.2.3 建立独立索引文件 142
9.3 索引文件的引用 143
9.3.1 结构复合索引文件的引用 143
9.3.2 独立复合索引文件的引用 144
9.3.3 独立索引文件的引用 145
9.4.2 独立复合索引文件的维护 146
9.4 索引文件的维护 146
9.4.1 结构复合索引文件的维护 146
9.4.3 独众索引文件的维护 148
9.5 索引标记的删除 148
9.5.1 删除结构复合索引文件中的索引标记 148
9.5.2 删除独立复合索引文件中的索引标记 149
9.5.3 删除独立索引文件 150
第10章 建立和操作数据库 151
10.1 自由表和数据库 151
10.2 建立数据库文件 151
10.3.1 打开数据库 152
10.3 数据库的操作 152
10.3.2 向数据库中添加表 154
10.3.3 显示数据库中的表 155
10.3.4 从数据库中移去表 156
10.3.5 引用多个数据库 157
10.3.6 关闭数据库 158
10.3.7 删除数据库 158
10.3.8 查看和修改数据库结构 158
第11章 使用数据词 161
11.1 设置长表名和表的注释 161
11.1.1 设置长表名 161
11.1.2 设置表的注释 162
11.2 设置长字段名、标题和注释 163
11.2.1 设置长字段名 163
11.2.2 设置字段注释 164
11.2.3 设置字段的标题 165
11.3 字段默认值 165
11.3.1 设置字段默认值 165
11.3.2 利用默认值来加快数据的输入 166
11.3.3 允许的默认值 166
11.3.4 何时使用默认值 166
11.4 建立和删除表间的关系 167
11.4.1 建立表间的永久关系 167
11.4.3 建立表之间的临时关系 168
11.4.2 删除表间的永久关系 168
11.5 设置字段级和记录级有效性规则 170
11.5.1 何时实施约束 170
11.5.2 设置字段级有效性规则 171
11.5.3 何时检查字段级规则 173
11.5.4 设置记录级有效性规则 173
11.5.5 何时检查记录级规则 174
11.5.6 从数据库中移去具有关联规则的表 174
11.6 生成参照完整性 174
11.7 存储过程 176
11.7.1 建立存储过程 176
11.7.3 查看数据库中存储过程的名字 177
11.7.2 将存储过程添加到数据库中 177
11.8 设置触发器 178
11.8.1 建立触发器 178
11.8.2 移去或删除触发器 179
11.8.3 修改触发器 180
第12章 视图 181
12.1 建立视图 181
12.1.1 使用向导创建视图 181
12.1.2 使用视图设计器创建视图 183
12.1.3 使用命令创建和修改视图 190
12.2 使用视图 191
12.2.3 在视图中更新多个表 192
12.2.2 在视图中更新数据 192
12.2.1 打开视图 192
12.3 重命名视图 193
12.4 删除视图 193
第3篇 应用系统界面设计 194
第13章 面向对象的程序设计 194
13.1 对象和类 194
13.1.1 对象 194
13.1.2 类 195
13.2 VFP类层次 196
13.2.1 容器类 197
13.3.1 类设计的考虑 198
13.3.2 类库文件 198
13.3 类的设计 198
13.2.2 控件类 198
13.3.3 创建新类 199
13.3.4 添加类属性与方法 203
13.3.5 类的注册 204
13.3.6 调用父类中的方法 204
13.3.7 修改类的定义 205
13.3.8 子类的定义 205
13.3.9 从类中派生对象 205
13.3.10 类的设计和应用实例 205
13.4.1 容器层次中对象的引用 217
13.4 对象的操作 217
13.4.3 调用方法 218
13.4.2 设置属性值 218
13.4.4 对事件的响应 219
13.5 通过编程定义类 219
13.5.1 保护和隐藏类成员 223
13.5.2 将对象加入容器类中 224
13.5.3 设计方法和事件代码 224
13.5.4 防止执行基类中的代码 225
13.5.5 成员数组 225
13.5.6 对象数组 225
13.5.7 编程实例 226
13.6.2 容器与对象事件 229
13.6 VFP事件 229
13.6.1 VFP核心事件 229
13.6.3 事件触发顺序 230
第14章 表单和表单集 232
14.1 创建表单 232
14.1.1 表单类型 232
14.1.2 用表单设计器创建表单 233
14.2 定制表单 235
14.2.1 使用表单设计器工具栏 236
14.2.2 向表单中添加一个控件 237
14.2.4 设置数据环境 238
14.2.3 向表单中添加多个控件 238
14.2.5 添加新的属性与方法到表单中 239
14.2.6 定义表单的操作行为 240
14.2.7 编辑事件和方法代码 241
14.3 修改表单 241
14.3.1 选择、移动和缩放控件 242
14.3.2 复制和删除表单控件 242
14.3.3 对齐控件 242
14.3.4 调整控件的位置 243
14.3.5 设置控件的Tab键次序 243
14.3.6 预定义常量 244
14.4.2 传递参数 245
14.4.3 从表单返回值 245
14.4 表单管理 245
14.4.1 隐藏表单 245
14.4.4 关闭活动表单 246
14.4.5 运行时属性的设置 246
14.5 保存和运行表单 247
14.5.1 保存表单 247
14.5.2 运行表单 247
14.6 创建表单集 248
15.1 标签控件 249
第15章 内部控件 249
15.2 文本框控件 250
15.3 编辑框控件 252
15.4 命令按钮控件 254
15.5 命令组控件 257
15.6 选项组控件 259
15.7 复选框控件 261
15.8 列表框控件 263
15.9 组合框控件 268
15.10 微调 271
15.11 图像控件 272
15.12 表格控件 274
15.13 定时器控件 277
15.14 页框控件 280
15.15 线条控件 281
15.16 形状控件 282
15.17 容器控件 284
15.18 OLE控件 285
第16章 菜单设计 289
16.1 启动策单设计器 289
16.2 菜单设计器的组成 290
16.3 创建和运行菜单 292
16.4 将菜单添加到顶层表单中 293
16.5 设计菜单示例 294
第17章 报表设计 297
17.1 报表设计器 297
17.1.1 启动报表设计器 297
17.1.2 报表设计工具栏 298
17.1.3 报表控件工具栏 298
17.2 设计报表布局 299
17.2.1 设置报表页面 299
17.2.2 设置报表数据环境 300
17.2.3 数据位置的规划 301
17.3 插入报表控件 301
17.3.3 添加图形 302
17.3.2 添加标签 302
17.3.1 添加字段 302
17.3.4 添加图片 303
17.4 数据分组 304
17.4.1 添加单个组 304
17.4.2 添加多个数据分组 305
17.4.3 修改组带区 305
17.4.4 删除组带区 305
17.4.5 修改分组次序 305
17.5 修改页面布局 305
17.5.1 修改带区 305
17.5.4 复制和删除控件 306
17.5.2 精确设置带区高度 306
17.5.3 选择和移动控件 306
17.5.5 调整控件的大小 307
17.5.6 控件的对齐设置 307
17.5.7 网格线设置 307
17.6 对打印进行控制 308
17.6.1 打印具有可变长度值的控件 308
17.6.2 设置控件的打印选项 309
17.7 运行报表 310
第18章 数据表查询应用设计 312
18.1 数据表查询实例1 312
第4篇 应用系统设计实例 312
18.2 数据表查询实例2 315
18.3 数据表查询实例3 316
18.4 数据表查询实例4 318
18.5 数据表查询实例5 322
第19章 学生成绩管理系统设计 325
19.1 系统结构 325
19.2 数据表设计 326
19.3 系统实现 327
19.3.1 主程序 328
19.3.2 pass表单 328
19.3.3 menu菜单 330
19.3.4 setprof表单 335
19.3.5 setprofl表单 336
19.3.6 setclass表单 337
19.3.7 setclassl表单 339
19.3.8 setcourse表单 341
19.3.9 setcoursel表单 344
19.3.10 setstudent表单 346
19.3.11 setstudentl表单 347
19.3.12 setstudent2表单 349
19.3.13 qustudent表单 350
19.3.14 find表单 351
19.3.15 setscore表单 356
19.3.16 setscorel表单 357
19.3.17 quscore表单 359
19.3.18 tscore报表 361
19.3.19 printscore表单 362
19.3.20 tscorel报表 363
19.3.21 usermain表单 363
19.3.22 usermainl表单 365
19.3.23 databack表单 366
附录 使用本书附带光盘的方法 369
参考文献 370