本书是高等职业技术教育IT类专业学生获取学历证书和国际著名软件厂商Borland软件认证证书的学习用教材。本教材依据课程教学大纲并结合Delphi 7高级程序员的教学特点编写而成。
全书分11章,主要内容包括多线程技术及其应用、组件和包、接口、COM技术概述、类型库与类型信息、创建COM客户应用程序、创建自动化服务器、创建活动服务器页面、ActiveX控件的开发和使用、多层数据库应用程序开发和ModelMaker入门。为了便于教学使用,本教材各章编入了大量教学范例,并拟制了大量习题。本教材结构清晰,应用实例丰富,实现了理论学习和具体应用的充分结合。
本书可作为各大专院校、高等职业技术院校计算机软件开发专业课程和相关双证教学课程的教材,也可供从事Delphi 7高级应用开发的程序设计人员学习、参考。
样章试读
目录
- 第1章 多线程技术及其应用 1
1.1 进程与线程 1
1.1.1 进 程 2
1.1.2 线 程 2
1.1.3 进程与线程的区别 3
1.1.4 线程的优先级 4
1.1.5 与进程有关的函数 8
1.2 TThread类 10
1.2.1 线程对象的状态 10
1.2.2 TThread类 18
1.2.3 在应用程序中使用多线程 19
1.2.4 线程的控制 19
1.2.5 使用Synchronize方法 27
1.2.6 线程优先级的控制 28
1.2.7 测试线程代码的执行时间 30
1.3 多线程的管理 30
1.3.1 线程的局部存储 31
1.3.2 多线程的同步机制 33
1.4 多线程技术的综合使用 48
1.5 多线程与数据库操作 56
练 习 题 60
第2章 组件和包 63
2.1 创建组件的一般概念 63
2.1.1 组件库 63
2.1.2 组件的属性 65
2.1.3 组件的方法 65
2.1.4 组件的事件 66
2.1.5 组件的拥有关系 66
2.1.6 组件的父子关系 66
2.2 组件设计基础 66
2.2.1 确定是否有必要编写组件 66
2.2.2 编写组件的一般步骤 67
2.2.3 确定一个祖先类 67
2.2.4 创建一个组件单元 68
2.2.5 添加属性 70
2.2.6 加入事件 76
2.2.7 创建自定义的方法 83
2.2.8 构造器和析构器 83
2.2.9 测试组件 84
2.2.10 提供组件图标 85
2.2.11 注册组件 86
2.3 从现有的组件中派生出新组件 87
2.3.1 创建和注册组件 87
2.3.2 修改组件类 88
2.4 创建一个图形组件 90
2.4.1 创建和注册组件 90
2.4.2 发布继承的属性 91
2.4.3 添加图形功能 91
2.5 在设计期间使组件有效 99
2.5.1 注册组件 99
2.5.2 添加属性编辑器 101
2.5.3 属性类别 108
2.5.4 添加组件编辑器 110
2.6 组件包的使用 114
2.6.1 包与DLL的比较 114
3.6.2 包的建立 115
2.7 综合实例 117
2.7.1 预备知识 117
2.7.2 定义枚举属性和构造函数 117
2.7.3 定义组件缺省的大小 118
2.7.4 在protected部分覆盖定义paint过程 118
2.7.5 添加箭头高度和填充属性 120
2.7.6 添加类类型的属性TPen和TBrush 122
2.7.7 定义新定制的事件 124
2.7.8 组件的测试 125
2.7.9 创建组件包发布组件 126
2.7.10 为组件添加位图图标 127
练 习 题 128
第3章 接 口 131
3.1 接口的基本概念 131
3.1.1 接口的协议意义 134
3.1.2 接口和类的不同 134
3.1.3 接口的不变性 135
3.2 接口的声明和GUID 136
3.2.1 接口的声明 136
3.2.2 GUID 137
3.2.3 接口的前向声明 139
3.3 接口的实现 139
3.3.1 接口变量的建立、使用及其引用对象实例的销毁 141
3.3.2 IInterface的实现 146
3.3.3 接口指针的获取 150
3.4 高级接口问题 156
3.4.1 在一个类中实现多个接口 156
3.4.2 接口的委托实现 162
3.4.3 接口中的属性 168
3.4.4 接口在多态方面的应用 168
3.5 接口应用举例 173
练 习 题 182
第4章 COM技术概述 185
4.1 COM技术背景 186
4.1.1 COM技术的发展 186
4.1.2 COM规范和COM实现 187
4.1.3 软件组件、组件软件与COM 187
4.1.4 COM的技术特性 192
4.2 COM应用的体系结构 194
4.2.1 COM接口 195
4.2.2 COM服务器 197
4.2.3 COM客户端 200
4.2.4 建立和使用提供加法服务的COM服务器 201
4.3 COM扩展 206
4.3.1 自动化服务器 207
4.3.2 活动服务器页面 207
4.3.3 ActiveX控件 207
4.3.4 活动文档 208
4.3.5 类 型 库 208
4.4 Delphi对COM技术的支持 208
4.4.1 向导所支持的接口 209
4.4.2 向导所生成的实现类 209
4.5 创建并使用简单COM对象的范例 211
练 习 题 226
第5章 类型库与类型信息 228
5.1 类型库编辑器 229
5.1.1 类型库编辑器的组成 229
5.1.2 类型库元素 233
5.2 类型库的建立、修改和发布 235
5.2.1 类型库所使用的数据类型和语言 235
5.2.2 类型库的建立和修改 246
5.2.3 保存和注册类型库信息 250
5.2.4 类型库的发布 251
5.3 类型库使用举例 252
练 习 题 258
第6章 创建COM客户端应用程序 260
6.1 导入类型库信息 261
6.1.1 使用“导入类型库”对话框 262
6.1.2 使用“导入ActiveX”对话框 263
6.1.3 导入类型库信息时所生成的代码 264
6.2 控制导入的对象 265
6.2.1 使用组件封套 265
6.2.2 使用数据感知的ActiveX控件 277
6.2.3 编写基于类型库定义的客户代码 279
6.3 创建无类型库服务器的客户端应用程序 284
6.4 OLE数据类型 300
6.4.1 OLE的基本数据类型 301
6.4.2 OleVariant类型 301
练 习 题 306
第7章 创建自动化服务器 309
7.1 创建自动化对象概述 309
7.1.1 自动化对象的设计 310
7.1.2 使用自动化对象向导 310
7.2 定义自动化对象的接口 314
7.2.1 为对象接口添加属性 314
7.2.2 为对象接口添加方法 314
7.2.3 向客户端发布事件 315
7.3 自动化接口 317
7.3.1 双重接口 318
7.3.2 调度接口 318
7.3.3 定制接口 320
7.4 编组数据 320
7.4.1 自动化兼容的类型 320
7.4.2 自动编组的类型限制 321
7.4.3 定制数据编组 321
7.5 进程内自动化服务器应用范例 321
7.5.1 创建一个执行长度单位换算的自动化服务器 321
7.5.2 长度单位换算的客户端应用程序 325
7.5.3 CreateOleObject和GetActiveOleObject 329
7.6 进程外自动化服务器应用范例 329
练 习 题 340
第8章 创建活动服务器页面 342
8.1 创建活动服务器对象 343
8.1.1 使用ASP内建对象 344
8.1.2 为ASP创建进程内和进程外服务器 348
8.2 注册活动服务器对象 348
8.2.1 注册进程内服务器 348
8.2.2 注册进程外服务器 348
8.3 调试活动服务器页面应用程序 349
8.4 ASP创建和使用范例 349
练 习 题 358
第9章 ActiveX控件的开发和使用 360
9.1 创建ActiveX控件概述 361
9.1.1 创建ActiveX控件和ActiveForm的步骤 361
9.1.2 ActiveX控件的组成元素 362
9.2 设计ActiveX控件 363
9.3 基于VCL控件创建ActiveX控件 363
9.4 基于VCL窗体创建ActiveForm 365
9.5 ActiveX控件许可 366
9.6 定制ActiveX控件的接口 367
9.6.1 添加新的属性、方法和事件 368
9.6.2 使用类型库建立简单的数据绑定 370
9.7 为ActiveX控件创建属性页面 375
9.7.1 创建新的属性页面 375
9.7.2 在属性页面窗体中添加控件 376
9.7.3 在属性页面中的控件与ActiveX控件的属性之间建立关联 376
9.7.4 将属性页面连接到ActiveX控件 378
9.8 ActiveX控件的注册和测试 378
9.8.1 ActiveX控件的注册 378
9.8.2 ActiveX控件的测试 379
9.8.3 一个ActiveX控件的开发和使用范例 379
9.9 在Web上发布ActiveX控件 390
9.9.1 发布ActiveX控件的步骤 390
9.9.2 设置发布选项 391
练 习 题 398
第10章 多层数据库应用程序开发 400
10.1 DataSnap系统基础 400
10.1.1 Datasnap技术 400
10.1.2 三层应用程序的工作步骤 402
10.2 支持DataSnap技术的组件 402
10.2.1 远程数据模块 403
10.2.2 数据集提供器 404
10.3 开发DataSnap客户/服务器应用程序 407
10.3.1 建立DataSnap应用程序服务器 407
10.3.2 建立DataSnap客户端程序 408
10.3.3 与应用程序服务器的连接 411
10.3.4 调用服务器上的接口 413
10.3.5 在客户端纠错 414
10.3.6 更新数据 414
10.3.7 从应用程序服务器获取参数 416
10.4 DataSnap的简单开发实例 416
10.5 公文包模式及应用范例 423
10.6 DataSnap应用综合范例 427
练 习 题 452
第11章 ModelMaker入门 455
11.1 ModelMaker概述 455
11.1.1 ModelMaker模型 456
11.1.2 ModelMaker工具 456
11.1.3 UML模式图 456
11.2 使用ModelMaker 461
11.2.1 创建模型和添加类模式图 461
11.2.2 定 义 类 462
11.2.3 定义类的成员 466
11.2.4 使用模型 471
11.2.5 维护模型 476
11.3 使用ModelMaker创建一个组件 477
11.3.1 创建一个新的ModelMaker工程 477
11.3.2 创建新的类 478
11.3.3 为TIntegerLabel类添加属性和方法 479
11.3.4 完成方法的实现 479
11.3.5 创建和生成单元源代码文件 480
11.3.6 调试和安装组件 483
11.3.7 在ModelMaker中对组件进行改进 484
11.3.8 组件文档 486
11.3.9 模式图文档 488
练 习 题 491
Borland认证课程介绍