第1章 Delphi入门 1
1.1 Delphi概述 1
1.1.1 Delphi的发展历史 1
1.1.2 Delphi 7的新特性 3
1.2 Delphi 7的集成开发环境 4
1.2.1 主窗体 4
1.2.2 代码编辑器和代码浏览器 17
1.2.3 窗体设计器 18
1.3 Delphi程序的组成 19
1.3.1 工程文件 19
1.3.2 窗体文件 20
1.3.3 单元文件 21
1.3.4 资源文件 22
1.3.5 包文件 22
1.3.6 工程选项文件、桌面设置和备份文件 22
1.3.7 编译器生成的文件 22
1.4 Delphi程序设计的基本步骤 23
1.5 课堂演练:设计一个简单的Delphi程序 23
1.6 小结 24
1.7 课后练习 25
1.7.1 简答题 25
1.7.2 操作题 25
第2章 Object Pascal语法基础 26
2.1 Object Pascal的语法元素 26
2.1.1 语法元素 26
2.1.2 标识符 27
2.1.3 保留字 27
2.1.4 注释 28
2.2 变量与常量 28
2.2.1 变量 28
2.2.2 常量 30
2.3 运算符与表达式 30
2.3.1 赋值运算符 30
2.3.2 比较运算符 31
2.3.3 算术运算符 31
2.3.4 逻辑运算符 32
2.3.5 位运算符 33
2.3.6 运算符的优先级 33
2.4 标准数据类型 33
2.4.1 数据类型的比较 34
2.4.2 字符和字符串 35
2.5 自定义数据类型 35
2.5.1 数组 35
2.5.2 枚举类型 37
2.5.3 集合类型 38
2.5.4 记录类型 39
2.5.5 对象类型 40
2.6 条件选择语句 40
2.6.1 if语句 40
2.6.2 case语句 41
2.7 循环语句 43
2.7.1 While循环 43
2.7.2 Repeat循环 43
2.7.3 For循环 44
2.7.4 Break语句 44
2.7.5 Continue语句 44
2.8 过程和函数 46
2.8.1 过程和函数的定义 46
2.8.2 参数 48
2.8.3 重载 48
2.9 课堂演练 49
2.10 小结 50
2.11 课后练习 51
2.11.1 简答题和填空题 51
2.11.2 编程题 52
第3章 面向对象编程 53
3.1 面向对象程序设计思想 53
3.1.1 对象、实体和类 53
3.1.2 对象的属性 54
3.2 面向对象程序设计的概念 56
3.2.1 封装 56
3.2.2 继承 57
3.2.3 多态 58
3.3 Delphi的面向对象编程 60
3.3.1 声明和创建实例 60
3.3.2 析构 61
3.4 Delphi对象的方法 61
3.5 Delphi对象的属性 62
3.6 代码可见性 63
3.7 课堂演练 64
3.8 小结 66
3.9 课后练习 66
简答题 66
第4章 组件应用与窗体设计(一) 67
4.1 Delphi组件概述 67
4.1.1 组件分类 67
4.1.2 组件的常用属性、方法及事件 68
4.2 文本显示与编辑类组件 69
4.2.1 TLabel组件 69
4.2.2 TEdit组件 70
4.2.3 TLabeledEdit组件 71
4.2.4 TMaskEdit组件 72
4.2.5 TMemo组件 73
4.2.6 TRichEdit组件 74
4.2.7 其他组件 75
4.3 按钮类组件 75
4.3.1 TButton组件 76
4.3.2 TBitBtn组件 76
4.3.3 TSpeedButton组件 77
4.4 单选按钮和复选框类组件 78
4.4.1 TRadioButton组件 78
4.4.2 TCheckBox组件 79
4.4.3 TRadioGroup组件 79
4.5 列表类组件 82
4.5.1 TListBox组件 82
4.5.2 TComboBox组件 84
4.5.3 TImageList组件 87
4.5.4 TComboBoxEx组件 88
4.5.5 TTreeView组件 89
4.5.6 TListView组件 93
4.6 容器和框架组件 95
4.6.1 TPanel组件 95
4.6.2 TPageControl组件 96
4.6.3 TFrame组件 98
4.7 课堂演练 100
4.8 小结 102
4.9 课后练习 103
4.9.1 简答题 103
4.9.2 操作题 103
第5章 组件应用与窗体设计(二) 104
5.1 TActionList组件 104
5.2 菜单组件 105
5.2.1 TMainMenu组件 105
5.2.2 TPopupMenu属性 107
5.2.3 菜单模板 107
5.3 工具栏和状态栏 111
5.3.1 TToolBar组件 111
5.3.2 TCoolBar组件 113
5.3.3 TStatusBar组件 113
5.4 TMonthCalendar和TdateTimePicker组件 114
5.5 对话框类组件 115
5.6 课堂演练 117
5.7 小结 118
5.8 课后练习 119
5.8.1 简答题 119
5.8.2 操作题 119
第6章 Delphi的程序框架设计 120
6.1 Delphi工程管理 120
6.1.1 一个工程一个目录 120
6.1.2 代码中被共享的单元 120
6.1.3 多工程管理 121
6.1.4 工程选项设置 122
6.2 Delphi工程的框架类 127
6.2.1 TForm类 127
6.2.2 TApplication类 133
6.2.3 TScreen类 136
6.3 MDI应用程序 137
6.4 课堂演练 145
6.4.1 快速闪烁窗体 145
6.4.2 用户登录验证窗体 148
6.4.3 限制窗体的大小 150
6.4.4 使窗体客户区实现窗体拖动 151
6.4.5 停靠窗口 151
6.5 小结 153
6.6 课后练习 154
6.6.1 简答题 154
6.6.2 操作题 154
第7章 错误和异常处理 155
7.1 程序的错误和调试 155
7.1.1 程序的错误类型 155
7.1.2 设置调试环境 156
7.1.3 设置断点 157
7.1.4 设置程序的执行方式 158
7.1.5 监视变量和相关数据的值 158
7.2 异常理论 159
7.2.1 异常处理方法 159
7.2.2 Try...Finally块 160
7.2.3 Try...Except块 162
7.2.4 混合使用资源保护和异常处理 164
7.2.5 异常处理的必要性 166
7.3 异常类 166
7.4 课堂演练 168
7.5 小结 170
7.6 课后练习 170
简答题 170
第8章 数据库程序开发基础 171
8.1 数据库系统概述 171
8.1.1 数据库开发的基本概念 171
8.1.2 Delphi可以使用的数据库类型 172
8.2 Delphi 7的数据库开发环境 173
8.2.1 BDE Administrator 173
8.2.2 DataBase DeskTop 175
8.2.3 SQL Explorer 181
8.2.4 Data Pump 182
8.3 Delphi数据库程序的体系结构和开发步骤 182
8.3.1 Delphi数据库程序的体系结构 182
8.3.2 桌面数据库应用程序的结构体系 183
8.3.3 Delphi数据库程序的开发步骤 183
8.4 课堂演练——利用向导设计数据库应用程序 184
8.5 小结 186
8.6 课后练习 186
8.6.1 简答题 186
8.6.2 操作题 186
第9章 数据库程序开发 188
9.1 BDE数据库组件 188
9.2 BDE数据集组件 190
9.2.1 TTable组件 190
9.2.2 TQuery组件 197
9.2.3 TSession组件 203
9.2.4 TField字段对象 203
9.3 数据源组件TDataSourse 206
9.4 数据感知组件 207
9.4.1 数据感知组件的共同属性 207
9.4.2 TDBGrid组件 208
9.4.3 TDBNavigator组件 209
9.4.4 TDBEdit组件和TDBText组件 210
9.4.5 TDBMemo组件 210
9.4.6 TDBImage组件 211
9.4.7 TDBListBox组件和TDBComboBox组件 211
9.4.8 TDBCheckBox组件 211
9.4.9 TDBRadioGroup组件 212
9.4.10 TDBChart组件 212
9.5 使用TQuickReport组件设计报表 214
9.6 课堂演练 219
9.7 小结 221
9.8 课后练习 221
9.8.1 简答题 221
9.8.2 操作题 221
第10章 ADO开发数据库程序 222
10.1 ADO基本知识 222
10.1.1 ADO原生对象 222
10.1.2 Delphi的ADO程序结构 223
10.2 ADO组件 226
10.2.1 TADOConnection组件 226
10.2.2 TADOCommand组件 227
10.2.3 TADODataSet组件 228
10.2.4 TADOTable组件 228
10.2.5 TADOQurey组件 228
10.2.6 TADOStoredProc组件 229
10.3 课堂演练 230
10.4 小结 233
10.5 课后练习 233
10.5.1 简答题 233
10.5.2 操作题 233
第11章 文件 234
11.1 文件的输入/输出 234
11.1.1 文本文件的输入/输出 234
11.1.2 有类型文件的输入/输出 238
11.1.3 无类型文件的输入/输出 245
11.2 TTextRec和TFileRec结构 247
11.3 驱动器和目录 248
11.3.1 获得驱动器列表 248
11.3.2 获得驱动器信息 250
11.3.3 获取Windows目录 252
11.3.4 获取系统目录 252
11.3.5 获取当前目录 253
11.3.6 从目录中查找文件 254
11.3.7 复制和删除目录 257
11.4 INI文件 258
11.4.1 认识INI文件 258
11.4.2 使用INI文件 259
11.5 注册表文件 263
11.5.1 认识注册表文件 263
11.5.2 使用注册表文件 264
11.6 课堂演练 266
11.7 小结 268
11.8 课后练习 268
11.8.1 简答题 268
11.8.2 操作题 268
第12章 图形、图像与字体 269
12.1 图形设备接口(GDI) 269
12.1.1 了解GDI 269
12.1.2 使用GDI 270
12.2 TCanvas画布 270
12.2.1 画笔TPen 271
12.2.2 画刷TBrush 273
12.2.3 TCanvas的其他属性 273
12.2.4 TCanvas的方法 276
12.2.5 定制图形 281
12.2.6 设备描述表 284
12.3 坐标系统和映射模式 285
12.3.1 设备坐标系 285
12.3.2 逻辑坐标系 285
12.3.3 屏幕坐标系 285
12.3.4 Form坐标系 285
12.3.5 坐标映射 286
12.3.6 设置映射模式 288
12.3.7 设置窗口/视区范围 288
12.4 高级字体 289
12.4.1 Win32字体类型 289
12.4.2 基本字体元素 289
12.4.3 GDI字体分类 291
12.4.4 显示不同字体 291
12.5 课堂演练 292
12.6 小结 296
12.7 课后练习 296
操作题 296
第13章 多媒体编程 297
13.1 一个简单的媒体播放器 297
13.2 播放WAV文件 298
13.3 播放AVI文件 298
13.4 设备支持 300
13.5 音频CD播放器 301
13.6 课堂演练——音频CD播放器的制作 302
13.7 小结 305
13.8 课后练习 305
操作题 305
第14章 动态链接库 306
14.1 DLL简介 306
14.2 静态链接和动态链接 307
14.3 使用DLL的必要性 308
14.3.1 共享代码、资源和数据 308
14.3.2 隐藏实现的细节 308
14.3.3 自定义控件 308
14.4 创建和使用DLL 309
14.4.1 创建DLL 309
14.4.2 定义接口单元 310
14.5 在动态库中显示窗体 311
14.5.1 显示模式窗体 311
14.5.2 显示无模式窗体 312
14.6 DLL的入口和出口函数 313
14.7 课堂演练 314
14.8 小结 316
14.9 课后练习 316
操作题 316
附录 Delphi函数方法参考手册 317