第一部分 应用程序基础 3
第1章 从用户角度描述ExpenseReporter 3
1.1 使用ExpenseReporter 3
1.1.1 字段有效性操作 3
1.1.2 控制管理 4
1.1.3 打印预览和打印 4
1.1.4 文件管理 6
1.1.5 帮助 6
1.2 关键技术 7
1.3 生成滚动区 8
1.4 控制排列 11
1.5 生成动态控制 12
1.6 增强字段浏览 14
1.7 选择文档界面 16
1.8 SDI文档管理 18
1.8.1 设置DataModified 18
1.8.2 放弃修改 18
1.8.3 使用DataModified 21
1.9 装载和保存文件 22
1.9.1 SaveDataAs 27
1.9.3 Open 29
1.9.2 SaveData 29
1.9.4 在命令行中指定文件 31
1.9.5 New 31
1.10 菜单设计 32
1.10.1 助记符和快捷键 33
1.10.2 显示对话框的菜单 33
1.10.3 分隔符 33
1.10.4 标准菜单 34
1.11 提供最新文件列表 41
1.11.1 文件列表菜单项 41
1.11.2 UpdateRecentFileMenu 42
1.11.3 SaveRcentFiles 43
1.11.4 LoadRecentFiles 44
1.11.5 AddRecentFile 45
1.11.6 RemoveRecentFile 45
1.12 小结 46
第2章 创建ExpenseReporter 47
2.1 关键技术 47
2.2 提供反馈 47
2.3 数据有效性操作 49
2.4 窗体的有效性操作 53
2.4.1 只输出文本框 56
2.4.2 格式化正文 56
2.5 打印 57
2.5.1 打印对象 58
2.6 打印预览 61
2.6.1 管理二条滚动条 64
2.7 用对话框打印 65
2.8 提供打印设置 67
2.9 提供帮助 68
2.9.2 创建帮助文件 69
2.9.1 帮助系统的类型 69
2.9.3 在Visual Basic中使用帮助文件 73
2.10 提供与上下文有关的帮助 74
2.10.1 Windows3.x类型的帮助 75
2.10.2 Windows 95类型的帮助 76
2.11 显示About对话框和初始屏幕 77
2.12 小结 80
第3章 AppointmentBook 81
3.1 使用AppointmentBook 81
3.1.1 选择日期 81
3.1.3 创建约会 82
3.1.2 查看约会 82
3.1.4 修改或删除约会 83
3.1.5 装载和保存数据 83
3.1.6 清除旧数据 84
3.1.7 显示帮助 84
3.1.8 显示与上下文有关的帮助 85
3.1.9 查看About对话框 86
3.1.10 保持各部分同步 87
3.2 关键技术 87
3.3.1 定义屏蔽位 88
3.3 使用屏蔽位 88
3.3.2 组合屏蔽位 89
3.3.3 AppointmentBook中的屏蔽位 91
3.4 使用MVC变化表 92
3.4.1 模式 93
3.4.2 视图 95
3.4.3 控制器 95
3.4.4 视图/控制器 96
3.4.5 AppointmentBook中的MVC 97
3.5 创建字体 99
3.5.1 使用CreateFont 101
3.6 滚动大量数据 102
3.7 设置告警 103
3.8 创建非矩形窗体 104
3.9 显示帮助 107
3.9.1 建立帮助浏览器 108
3.9.2 建立帮助文档 111
3.10 小结 116
4.1 安装PropertySetter 119
4.2 使用属性设置 119
第4章 PropertySetter 119
第二部分 嵌入程序 119
4.3 关键技术 121
4.4 理解OLE 121
4.5 生成嵌入程度 122
4.5.1 设置项目选项 122
4.5.2 生成嵌入类 124
4.5.3 生成主程序 130
4.5.4 生成服务器动态链接库 132
4.6 检测嵌入程序 135
4.5.5 概述嵌入程序的生成过程 135
4.7 小结 136
第5章 Aligner 137
5.1 使用Aligner 137
5.2 关键技术 138
5.3 提供AfterCilck 138
5.4 对控制进行列排列 140
5.5 对控制进行行与列的排列 141
5.6 小结 147
6.1 使用Scroller 148
第6章 Scroller 148
6.2 关键技术 149
6.3 生成嵌入子菜单 150
6.4 生成滚动区域 151
6.4.1 生成控制 152
6.4.2 设置控制内容 152
6.5 排列滚动区域控制 156
6.6 小结 158
第7章 AddInMaker 159
7.1 使用AddInMaker 159
7.2 关键技术 160
7.4 创建Sub Main 161
7.3 管理AddInMaker对话框 161
7.5 创建ConnectAddIn和DisconnectAddIn子程序 164
7.5.1 CreateConnectAddIn(生成连接嵌入程序) 165
7.5.2 CreateDisconnectAddIn(生成分离嵌入程序) 166
7.6 生成命令类 167
7.7 小结 169
第三部分 数据库技术 173
第8章 PeopleWatcher 173
8.1 使用PeopleWatcher 173
8.3 理解数据库 176
8.2 关键技术 176
8.3.1 数据库工程 177
8.3.2 数据管理程序 177
8.4 使用数据控制 178
8.4.1 数据控制 178
8.4.2 连接其它控制 179
8.4.3 选取记录 179
8.4.4 数据控制代码 180
8.5 使用数据访问对象 181
8.5.1 生成Recordsets 181
8.6 理解PeopleWatcher 185
8.6.1 管理结构控制 186
8.6.2 显示合适的命令 189
8.6.3 编辑记录 190
8.6.4 编辑图象 191
8.6.5 接受和放弃修改 192
8.6.6 验证数据有效性 193
8.6.7 使用户界面通用化 194
8.6.8 DBUser类 198
8.6.9 字段的有效性 202
8.8 小结 204
8.7 测试数据库应用程序 204
第9章 数据库查询 205
9.1 使用Query程序 205
9.2 关键技术 206
9.3 创建数据库 206
9.4 组成SQL命令 208
9.4.1 创建语句 209
9.4.2 删除命令 210
9.4.3 更改命令 211
9.4.4 选取命令 211
9.4.6 更新语句 215
9.4.5 插入语句 215
9.5 处理SQL语句 216
9.5.1 ProcessAllCommands子程序 216
9.4.7 DELETE语句 216
9.5.2 StripCommands子程序 217
9.5.3 ProcessCommand子程序 219
9.5.4 ProcessSelect子程序 220
9.6 权限 223
9.7 小结 223
10.2 直接访问远程数据库 224
第10章 远程PeopleWatcher 224
10.1 关键技术 224
10.2.1 通过数据控制器使用远程数据库 225
10.3 连接远程表 225
10.3.1 编程连接远程表 225
10.3.2 使用数据管理器 228
10.4 改善网络特性 230
10.5 小结 230
第11章 TimeSync 233
11.1 使用TimeSync 233
第四部分 客户/服务器应用 233
11.2 关键技术 234
11.3 第一步:在客户中调试 234
11.3.1 TimeSync第一步 234
11.4 第二步:本地测试 236
11.4.1 创建服务器 236
11.4.2 创建客户 238
11.4.3 测试 239
11.4.4 第二步总结 239
11.5 第三步:远程测试 240
11.5.2 安装服务器 241
11.5.1 编译服务器 241
11.5.3 注册服务器 242
11.5.4 授权服务器访问 242
11.5.5 启动自动化管理器 243
11.5.6 注册服务类 243
11.5.7 运行客户程序 244
11.6 问题解决 244
11.7 使用RegClass 244
11.8 小结 246
第12章 QueryServer 247
12.1 使用QueryServer 249
12.2 关键技术 250
12.3 创建ReportList 251
12.3.1 QueryServerForm 252
12.3.2 ReportListForm 252
12.3.3 ParameterForm 255
12.3.4 ReportForm 257
12.4 创建Librarian 258
12.5 创建SQLServer 259
12.5.1 一个典型的SQLServer 260
12.5.2 自由格式的SQL 261
12.6 小结 262
第13章 AsyncServer 263
13.1 使用AsyncServer 264
13.2 关键技术 264
13.3 在Visual Basic中创建异步服务器 265
13.4 请求报表 266
13.4.1 获取报表参数 266
13.4.2 模拟模型 267
13.4.3 请求报表 268
13.5.1 排定报表 269
13.5 产生报表 269
13.5.2 启动报表对象 270
13.5.3 创建报表 270
13.6 显示结果 272
13.6.1 显示ReportForm 272
13.6.2 显示报表 272
13.6.3 显示信息 273
13.7 小结 274
第14章 报警控制器 277
14.1 使用报警控制器 277
第五部分 ActiveX 277
14.2 关键技术 278
14.3 操作控制项目 278
14.3.1 测试应用程序 279
14.3.2 ActiveX控制 280
14.3.3 运行测试程序 281
14.4 管理控制显示 281
14.5 执行属性程序 282
14.6 设置缺省属性值 283
14.6.1 使用环境属性 283
14.6.2 初始化时延迟执行 283
14.7 读和写属性值 284
14.8 委派标准属性 285
14.8.1 属性标识(ID) 285
14.8.2 Enabled属性 286
14.9 引发事件 286
14.10 小结 287
第15章 条形标尺控制 288
15.1 与条形标尺控制相互作用 288
15.3 关键技术 289
15.2 条形标尺编程 289
15.4 管理条形标尺属性 290
15.4.1 Min、Max、KeyChangeAmount及Value 290
15.4.2 BackColor及ForeColor 291
15.4.3 Style属性 292
15.4.4 Appearance属性 293
15.5 绘制条形标尺 295
15.6 管理鼠标 297
15.6.1 MouseDown 297
15.6.2 ComputeValue 298
15.6.4 MouseUp 299
15.6.3 MouseMove 299
15.7 处理键盘事件 300
15.8 修改条形标尺 301
15.8.1 抽动标尺 302
15.8.2 宽标尺 303
15.8.3 图片标尺 303
15.8.4 面板标尺 306
15.8.5 组合标尺 309
15.9 小结 310
16.1 使用直方图 311
第16章 直方图 311
16.2 直方图程序设计 312
16.3 关键技术 313
16.4 管理控制数组 313
16.5 滚动数据 316
16.6 委派到一控制数组 316
16.7 支持索引属性 317
16.8 引发索引事件 318
16.9 小结 318
17.2 关键技术 321
17.1 在Web网页上使用ActiveX控制 321
第17章Web上的ActiveX控制 321
第六部分 Web上的ActiveX 321
17.3 确保安全使用 324
17.3.1 信用授权机构 325
17.4 显示ActiveX控制 325
17.4.1 OBJECT语句 325
17.5 获悉类标志 326
17.5.1 一个样例页面 327
17.6 更新标签 328
17.7 选择颜色 330
17.8 异步地加载数据 333
17.8.1 异步地加载数据 334
17.8.2 在Web中加载图片 334
17.9 小结 335
第18章 WebSurvey 336
18.1 使用WebSurvey 336
18.2 关键技术 337
18.3 创建Web网页 338
18.3.1 无线按钮 338
18.3.2 表 340
18.3.3 选择控制 341
18.3.4 文本区域 342
18.3.5 文本框 343
18.3.6 检查框 343
18.4 通过Web发送数据 344
18.4.1 InetXfer 345
18.5 通过Web接收消息 346
18.6 压缩及解压数据 348
18.6.1 AppendSegment 348
18.6.2 RemoveSegment 350
18.7 小结 352
19.1 使用SiteMapper 353
第19章 SiteMapper 353
19.2 关键技术 355
19.3 检索Web文档 355
19.4 分析URL 356
19.4.1 理解URL 356
19.4.2 对URL进行语法分析 357
19.5 扩展URL 359
19.6 映射Web站点 361
19.7 修改SiteMapper 367
19.8 小结 367