1 Delphi for.NET概述 2
1.1 什么是Microsoft.NET框架 2
1.2 Delphi for.NET的主要特点 2
1.3 Delphi中的一些常用术语和概念 3
1.3.1 类、对象、特性与事件 4
1.3.2 构件 4
1.3.3 可视化程序设计 5
1.3.4 面向对象的程序设计 5
1.3.5 事件与事件驱动 6
1.3.6 Object Pascal和Delphi 6
1.4 Delphi 2005的安装与启动 7
1.4.1 Delphi 2005安装条件 7
1.4.2 安装步骤 8
1.5 如何订购Delphi 2005 8
2 Delphi 2005集成开发环境 9
2.1 Delphi 2005集成开发环境简介 9
2.1.2 窗体 11
2.1.1 欢迎页 11
2.1.3 HTML设计器 13
2.1.4 设计器表面 14
2.1.5 工具调色板 14
2.1.6 对象观察器 15
2.1.7 对象仓库 16
2.1.8 工程管理器 16
2.1.10 代码编辑器 17
2.1.9 数据探查器 17
2.1.11 结构视图 19
2.1.12 历史管理器 19
2.2 创建新工程 20
2.2.1 创建一个简单的Windows窗体应用实例 20
2.2.2 选取构件到窗体上 22
2.2.3 设置构件特性 22
2.2.4 编写程序代码 23
2.2.5 编译和调试工程 25
2.3.2 ASP.NET Web应用 26
2.3.1 Windows应用 26
2.3.3 ASP.NET Web服务应用 26
2.3 工程的类型 26
2.2.6 分发应用 26
2.3.4 VCL.NET应用 27
2.3.5 数据库应用 27
2.3.6 模型驱动的应用 27
2.3.7 汇编 28
2.3.8 非托管代码和COM/Interop 28
习题 28
3.1 Delphi程序的基本结构 29
3 Delphi编程语言 29
3.1.1 一个简单的Delphi应用程序示例 30
3.1.2 单元和名字空间 34
3.2 Object Pascal基本语法元素 36
3.2.1 特殊符号 36
3.2.2 保留字 36
3.2.3 标识符 37
3.2.4 数字 38
3.2.5 标号 38
3.2.6 字符串 38
3.2.7 注释 39
3.3 常量和变量数据类型 40
3.3.1 常量 40
3.3.2 变量数据类型 40
3.3.3 程序说明部分 45
3.4 表达式 47
3.4.1 算术运算符 47
3.4.2 逻辑运算符 48
3.4.3 字符串运算符 49
3.4.5 关系运算符 50
3.4.4 集合运算符 50
3.4.6 布尔运算符 51
3.5 语句 52
3.5.1 赋值语句 52
3.5.2 过程语句 52
3.5.3 goto语句 52
3.5.4 复合语句 53
3.5.5 条件语句 54
3.5.6 重复语句 56
3.6 过程与函数 61
3.6.1 程序块 61
3.6.2 过程的说明与调用 63
3.6.3 函数的说明与调用 64
3.6.4 变量参数和常量参数 66
3.7 数组 66
3.8 记录 68
3.8.1 记录类型的说明格式 68
3.8.2 记录字段的引用和with语句 69
3.8.3 记录常量 70
3.8.4 带有可变字段的记录 70
3.9.1 文本文件 71
3.9 文件 71
3.9.2 记录文件 75
习题 77
4 构建Windows窗体应用 81
4.1 Windows窗体名字空间 81
4.2 Windows窗体构件 82
4.3 通用特性、事件和方法 84
4.3.1 Control的特性、事件与方法 84
4.3.2 CommonDialog的特性、事件与方法 86
4.4.1 标签构件 87
4.4 可视构件 87
4.4.2 编辑构件 88
4.4.3 列表框构件 89
4.4.4 组合框构件 90
4.4.5 按钮构件 91
4.4.6 ScrollBars和滚动条构件 92
4.4.7 PictureBox和ImageList构件 92
4.5.1 MainMenu和ContextMenu构件 93
4.5.2 Timer构件 93
4.5 非可视构件 93
4.5.3 对话框构件 94
4.5.4 基本构件小结 96
4.6 构建Windows窗体应用 97
4.6.1 实例一:一个显示图片及像素颜色成分的工程 97
4.6.2 实例二:一个文本编辑器工程 101
习题 118
5 用BDP.NET构建数据库应用程序 119
5.1 Delphi数据库基础 119
5.1.1 关系式数据库的基本概念 120
5.1.2 SQL语言简介 122
5.1.3 使用数据库 123
5.2 ADO.NET和BDP.NET构件 124
5.2.1 ADO.NET体系结构 124
5.2.2 BDP.NET名字空间 125
5.2.3 BDP.NET数据类型 125
5.2.4 BDP.NET构件 126
5.3 BDP.NET构件设计器 129
5.3.1 构件设计器关系 129
5.3.2 使用连接编辑器 129
5.3.4 配置数据适配器 131
5.3.3 使用命令文本编辑器 131
5.3.5 数据探测器 133
5.4 关于数据集 135
5.4.1 数据集的特性和方法 135
5.4.2 使用标准的数据集 136
5.5 关于DataGrid 139
5.5.1 DataGrid特性 139
5.5.2 DataGrid事件 141
5.5.3 DataGrid方法 141
5.5.4 DataGrid程序设计范例 142
5.6.1 构建一个简单的Windows窗体数据库应用 144
5.6 Windows窗体数据库应用程序制作 144
5.6.2 从数据探测器创建数据库工程 148
5.6.3 创建主-从表关系 150
5.6.4 在一个数据库应用中传递参数 151
5.7 创建和使用DataTable 155
5.7.1 产生数据表对象 155
5.7.2 定义数据表结构 156
5.7.3 处理表中的数据 160
5.8.1 使用组合框和列表框显示数据 165
5.8 Windows窗体控件的数据绑定 165
5.8.2 文本框的数据绑定 167
习题 169
6 用Delphi 2005进行ECO建模 170
6.1 建模基本概念 170
6.2 UML语言 170
6.2.1 基本UML关系 170
6.2.2 UML类图表 171
6.3 ECO框架 172
6.2.3 对象约束语言 172
6.3.1 ECO空间 173
6.3.2 Borland.ECO名字空间 173
6.4 ECO建模程序常规步骤 176
6.5 ECO建模程序实例 177
习题 181
7 用ASP.NET构建Web应用程序 182
7.1 ASP.NET概述 182
7.2 构建ASP.NET Web应用程序的一般步骤 184
7.3 一个简单的ASP.NET Web应用程序 187
7.4 Delphi for.NET中的Web控制构件 195
7.4.1 广告条构件 195
7.4.2 校验类构件 197
7.4.3 文本构件 203
7.4.4 重复器构件 203
7.4.5 XML构件 205
7.5 Delphi for.NET中的HTML服务器端控制构件 210
7.5.1 HTML服务器端构件概况 210
7.5.2 实现HTML服务器端可编程控制构件 213
7.5.3 使用HTML服务器端构件常见错误 214
7.5.4 HTML服务器端构件应用实例——文件上载 214
习题 219
8 用ASP.NET构建Web数据库应用程序 220
8.1 Web数据库应用开发概述 220
8.2 数据库Web构件 221
8.2.1 数据库Web构件的名字空间 221
8.2.3 数据库Web数据感知构件 223
8.2.2 数据库Web数据源构件 223
8.3 构建数据库Web应用程序的基本步骤 224
8.4 数据库Web应用程序实例 225
习题 233
9 用ASP.NET构建Web服务应用程序 234
9.1 ASP.NET Web服务概述 234
9.1.1 ASP.NET Web服务结构 235
9.1.2 ASP.NET Web服务基础知识 235
9.1.3 Web服务的应用 235
9.1.4 ASP.NET Web服务的文件类型 236
9.2.1 Web服务程序创建步骤 237
9.2 创建ASP.NET Web服务程序 237
9.2.2 使用Web服务的客户程序 238
9.2.3 Web服务实例——温度单位转换Web服务 240
习题 247
10 构建VCL.NET窗体应用 248
10.1 VCL.NET构件和名字空间 248
10.2 构建VCL.NET窗体应用示例 249
10.2.1 构建一个VCL窗体“Hello world!”应用 250
10.2.2 在一个VCL窗体应用中显示一个位图图像 251
10.3 构建一个VCL窗体dbExpress.NET数据库应用 252
10.3.1 设置数据库连接 253
10.3.2 建立单向数据集 254
10.3.3 添加数据供给者 254
10.3.4 添加客户数据集 254
10.3.5 添加数据源 254
10.3.6 关联DataGrid到DataSet 255
10.4 VCL.NET常用数据库构件 255
10.4.1 数据读写构件 255
10.4.2 数据控制构件 257
10.5 用数据库桌面构建本地数据库 258
10.4.3 本地数据库应用程序的结构 258
10.6 本地数据库应用设计 261
10.6.1 显示单条记录 262
10.6.2 显示多条记录 265
10.7 VCL.NET数据集操作 266
10.7.1 打开和关闭数据集 266
10.7.2 决定和设置数据集状态 267
10.7.3 移动记录指针 267
10.7.4 在数据集中查找记录 270
10.7.5 使用过滤器显示一个数据集的子集 271
10.7.6 显示、转换和读写字段值 272
10.8 关于Query 274
10.8.1 使用Query构件 274
10.8.2 编写SQL语句 275
10.8.3 参数值的设置 277
习题 279
11 Delphi VCL.NET多媒体编程 281
11.1 计算机的硬件配置需求 281
11.2 Delphi的多媒体构件 281
11.2.2 用MediaPlayer播放声音和动画文件实例 282
11.2.1 怎样使用MediaPlayer 282
11.3 用Media Player播放Wave声音文件 285
11.4 用MediaPlayer播放MIDI声音文件 287
11.4.1 MediaPlayer的Notify属性 288
11.4.2 MediaPlayer的NotifyValue属性 289
11.5 用MediaPlayer播放AVI动画文件 290
11.6 用MediaPlayer实现用户选择播放 290
11.6.1 制作一个媒体通道程序 290
11.6.2 设置滤波器选择文件类型 291
11.7 MediaPlayer的OnClick事件句柄编程 293
习题 296
12 异常处理 297
12.1 异常的概念 297
12.2 何时使用异常 297
12.3 Exception类 298
12.4 运行时间错误异常 300
12.4.1 输入输出错误 300
12.4.2 重大错误 301
12.5 Delphi异常处理机制 302
12.4.3 操作系统错误 302
12.5.1 使用try…finally结构 303
12.5.2 使用try…except结构 304
12.5.3 使用on…do结构 305
12.5.4 嵌套的异常处理结构 307
12.6 沉默的异常 308
12.7 自定义异常类 308
12.7.1 异常类型说明 308
12.7.2 自定义异常类 309
12.8 引发和处理异常 310
12.9 异常的重引发 311
习题 312
13 使用Rave创建报表 314
13.1 在Delphi工具调色板上添加Rave构件 314
13.2 Rave可视化报表设计环境 315
13.2.1 页设计器和事件编辑器 316
13.2.2 特性面板 316
13.2.3 工程树状面板 316
13.2.4 状态栏 316
13.2.5 工具栏和工具调色板 317
13.2.6 Rave编辑器 319
13.3 构建一个数据库报表的基本步骤 321
13.3.1 使用Rave向导创建一个简单数据库报表 321
13.3.2 使用Rave向导创建Master-Detail报表 323
13.4 Rave报表工程的基本组成 324
13.4.1 数据连接构件 324
13.4.4 报表和全局页 325
13.4.5 数据视图 325
13.4.3 报表工程文件 325
13.4.2 Rave工程构件——TRvProject 325
13.5 其他Rave Report构件介绍 326
13.6 Rave报表预览和打印格式 328
13.7 编写报表脚本程序 329
习题 331
14 使用InstallShield X Express制作安装程序 332
14.1 InstallShield X Express简介 332
14.2 使用InstallShield前的准备工作 332
14.3 打开一个新的或现有的安装程序制作工程 333
14.3.1 创建新的安装工程 334
14.4.1 基本信息 335
14.3.2 打开已有的安装工程 335
14.4 配置组织信息 335
14.4.2 特征设置 336
14.4.3 配置安装程序类型 337
14.5 指定应用程序数据 338
14.6 配置目标系统 339
14.6.1 为Setup生成一个快捷菜单 339
14.6.2 ODBC resource设置 341
14.7 定制安装程序样式 342
14.6.3 修改注册表 342
14.8 定义Setup需求和动作 343
14.8.1 安装程序需求 343
14.8.2 定制动作 344
14.9 应用程序分发 344
14.9.1 构建安装盘 344
14.9.2 试运行安装程序 345
14.9.3 应用程序分发 346
习题 346
附录A 本书缩略语词汇表 347