第1章 认识Delphi 5 1
1.1 简明好用的IDE 1
1.1.1 Delphi的主窗体 1
1.1.2 窗体设计器 3
1.1.3 Object Inspector 4
1.1.4 Code Editor 4
1.2 桌面设置与存储 5
1.2.1 定制主窗口 6
1.2.2 定制Code Editor 7
1.2.3 存储与载入桌面设置 9
1.3 小结 10
第2章 简单的程序设计 11
2.1 工程管理与To-Do List 11
2.1.1 工程管理 11
2.1.2 To-Do List 15
2.2 组件与Form 17
2.2.1 取用组件 17
2.2.2 组件与窗口的位置 19
2.2.3 属性的设置与效果 20
2.3 响应事件 24
2.4 小结 26
第3章 Delphi中的Object Pascal的基本语法 27
3.1 基本符号 27
3.1.1 特定符号 27
3.1.2 指示字 28
3.1.3 标识符 28
3.1.4 记号分隔符 29
3.2 数据及其类型 29
3.2.1 integer整数型 29
3.2.2 real实数型 30
3.2.3 char类型 30
3.2.4 boolean类型 30
3.3 构造类型 30
3.3.1 枚举类型 30
3.3.2 子界类型 31
3.3.3 指针 31
3.3.4 记录 32
3.3.5 数组类型 34
3.3.6 集合类型 35
3.3.7 字符串 35
3.3.8 variant数据类型 36
3.4 赋值兼容与类型强制 38
3.5 程序结构 38
3.5.1 语句 38
3.5.2 控制结构 39
3.5.3 过程与函数 40
3.5.4 Pascal程序的结构 42
3.6 unit文件 43
3.7 作用域规则 44
3.8 小结 45
第4章 Delphi中的面向对象特性 46
4.1 面向对象语言简述 46
4.2 Delphi中的类 47
4.2.1 类的声明 47
4.2.2 构造方法与析构方法 48
4.3 Delphi中的对象 49
4.4 类的继承与子类型 50
4.5 子类型与赋值兼容 53
4.6 重新实现成员方法 53
4.7 虚方法、抽象类与接口 54
4.8 属性与事件 58
4.9 属性与事件的继承 63
4.10 运行时类型信息与类型强制 65
4.11 标准的基类TObject 67
4.12 类类型 68
4.13 Try-finally-except结构与异常处理 69
4.14 小结 74
第5章 深入研究Form与窗口 75
5.1 窗体与窗口的关系 75
5.2 Windows标准窗口的构成与实现 75
5.2.1 标题栏 76
5.2.2 主菜单 76
5.2.3 客户区(状态栏、工具栏) 79
5.2.4 工具栏 82
5.2.5 ActionList 98
5.3 窗体分割 102
5.3.1 使用分割条 102
5.3.2 使用HeaderControl 103
5.4 建立多页窗体 104
5.4.1 TabControl 104
5.4.2 PageControl 105
5.4.3 Window 3.1 组件 105
5.5 模态窗口与对话框 106
5.6 MDI程序 109
5.7 Frame——一种特殊的窗体 114
5.7.1 建立Frame 114
5.7.2 使用Frame 115
5.8 小结 115
第6章 Application全局对象与Screen全局对象 117
6.1 Application对象 117
6.2 Screen对象 117
6.3 Application对象的属性与方法 118
6.4 在程序中使用Application对象 119
6.4.1 Splash屏幕 120
6.4.2 设计Splash 120
6.4.3 设计拖延算法 121
6.4.4 在.dpr中添加语句 122
6.5 为程序添加帮助文件 123
6.5.1 帮助文件的结构 123
6.5.2 Windows帮助系统的原理 124
6.5.3 Delphi对帮助文件的支持 124
6.6 Screen对象 125
6.7 在程序中使用Screen对象 126
6.7.1 测试系统字体 126
6.7.2 窗口的大小 127
6.8 小结 130
第7章 多媒体程序设计 131
7.1 多媒体技术概述 131
7.2 在窗体中画图 131
7.2.1 Shape组件 132
7.3 Image组件 135
7.4 几个Delphi中的图片类 136
7.5 改进的图片阅览器 137
7.6 Canvas对象 148
7.7 Owner-draw技术 157
7.8 窗体的重绘 159
7.9 Animate组件 160
7.10 MediaPlayer 161
7.11 使用Windows API函数 169
7.12 小结 176
第8章 VCL类库 177
8.1 浏览VCL 177
8.2 几个重要的VCL类 177
8.2.1 TPersistent 178
8.2.2 Tcomponent——组件的始祖 179
8.2.3 TControl 180
8.2.4 TWinControl类 182
8.3 建立第一个组件 184
8.4 第一个有用的组件 187
8.5 有组件成员的组件 189
8.6 添加事件 194
8.7 添加属性编辑器和组件编辑器 196
8.7.1 添加属性编辑器 196
8.7.2 添加组件编辑器 206
8.8 Tools API简介 212
8.9 ActiveX控件 212
8.9.1 使用ActiveX控件 213
8.9.2 ActiveX控件的Delphi描述 214
8.9.3 创建ActiveX控件 216
8.10 小结 217
第9章 多线程程序设计 218
9.1 与线程有关的一些概念 218
9.2 为什么要使用多线程 219
9.3 Delphi中对多线程的支持 219
9.4 使用TThread类 221
9.5 线程与线程 224
9.6 线程的独占 227
9.7 小结 229
第10章 动态链接库 230
10.1 动态链接库在Windows中的作用 230
10.2 使用其他语言编写的dll 232
10.3 显式引入 237
10.4 用Delphi编写dll 240
10.5 dll中的全局变量 243
10.6 dll的入口 246
10.7 在dll中使用VCL类 247
10.8 资源dll 248
10.9 小结 252
第11章 COM与OLE 253
11.1 OLE技术简介 253
11.2 接口 254
11.3 OLE的server与client 256
11.4 创建进程内服务器 257
11.5 创建进程间服务器 262
11.6 使用已有的COM服务器 270
11.7 ActiveForm 273
11.8 小结 276
第12章 Internet程序设计 277
12.1 浏览Web页 277
12.2 建立真正的Web服务器程序 281
12.3 构建其他类型的服务器 290
12.3.1 发送与接受邮件 291
12.3.2 FTP 292
12.3.3 UDP 294
12.3.4 新闻组 294
12.3.5 其他的FastNet组件 295
12.4 在Web页上使用ActiveForm 296
12.5 小结 298
第13章 数据库程序设计 299
13.1 数据库技术简介 299
13.2 第一个数据库程序 300
13.3 利用Table组件建立连接 303
13.4 数据中介DataSource 305
13.5 数据显示控件 305
13.6 Table组件 307
13.6.1 使用Table组件的右键菜单 307
13.6.2 访问Table中的数据 309
13.6.3 使用索引 312
13.6.4 在表中查询数据 316
13.7 另一个功能强大的数据集组件——Query 320
13.7.1 理解数据集的概念 320
13.7.2 认识Query 321
13.7.3 SQL简介 321
13.7.4 数据定义语言 323
13.7.5 数据操纵语言 326
13.7.6 数据查询语言 328
13.7.7 学习SQL的意义 338
13.7.8 在Query组件中使用SQL 338
13.7.9 使用SQL Builder 343
13.8 BDE简介 346
13.9 访问任何类型的数据库 347
13.9.1 ODBC简介 347
13.10 Datebase组件 352
13.11 Decision Cube组件 353
13.12 使用Data Module 359
13.13 Session的概念 366
13.14 小结 367
第14章 高级数据库程序的设计 368
14.1 创建Client/Server数据库程序 368
14.2 服务器端简介 368
14.3 InterBase简介 369
14.4 客户端的基本结构 375
14.5 InterBase客户端 375
14.6 ADO简介 381
14.7 构建多层数据库应用程序 383
14.7.1 构建一个中介程序 384
14.7.2 建立客户程序 388
14.7.3 进行数据控制 390
14.7.4 总结 393
14.7.5 建立MTS Application Server 394
14.7.6 建立CORBA连接 395
14.8 与Web页结合 396
14.9 小结 400