第一章 Delphi 4简介 1
1.1 Delphi 4的新特性 1
1.1.1 语言扩展 1
1.1.2 项目管理器(Project Manager) 2
1.1.3 用户界面的增强功能 2
1.1.4 AppBrowser 3
1.1.5 CORBA支持 3
1.1.6 ActionLists 3
1.2 Delphi 4的安装 4
1.2.1 Delphi 4的版本 4
1.2.2 系统最低需求 4
1.2.3 安装步骤 4
1.3 开发环境简介 8
1.3.1 主窗口 8
1.3.2 对象编辑器 10
1.3.3 代码编辑器 11
1.3.4 窗体(Form) 12
第二章 编写第一个Delphi程序 13
2.1 Delphi的编程特点 13
2.2 编写第一个程序 13
2.2.1 设计思路 13
2.2.2 程序设计 14
2.2.3 程序运行 21
2.2.4 程序的存储 21
2.3 工程简介 22
2.3.1 工程文件 22
2.3.2 窗体文件 23
2.3.3 单元文件 23
2.3.4 Delphi生成的其它文件 24
2.4 工程管理 25
2.4.1 工程管理器简介 25
2.4.2 给工程增加文件 26
2.4.3 从工程中删除文件 27
2.5 工程的编译和运行 27
2.5.1 语法检查 28
2.5.2 编译链接 28
2.5.3 重新编译链接 28
2.5.4 工程的运行 29
2.6 工程环境设置 29
2.6.1 Forms选项卡 29
2.6.2 Application选项卡 30
2.6.3 Compiler选项卡 31
2.6.4 Linker选项卡 33
2.6.5 Directories/Conditionals选项卡 34
2.6.6 VersionInfo选项卡 35
2.6.7 Packages选项卡 36
2.7 集成调试器 37
2.7.1 何时使用调试器 37
2.7.2 调试前的准备 37
2.7.3 准备调试用例 38
2.7.4 单步执行程序 40
2.7.5 设置断点 40
2.7.6 监视变量 41
第三章Pascal语言 45
3.1 Pascal语言简介 45
3.2 数据类型 45
3.2.1 变量 46
3.2.2 常量 46
3.2.3 资源字符串常量 48
3.2.4 Delphi的数据类型 48
3.2.5 用户定义的数据类型 56
3.2.6 指针类型 60
3.2.7 文件类型 61
3.2.8 Delphi中的字符串 61
3.3 编程风格 66
3.3.1 注释 66
3.3.2 大写的使用 67
3.3.3 空白 67
3.3.4 美观的打印 67
3.3.5 语法的突出 68
3.4 Pascal语句 68
3.4.1 表达式和运算符 68
3.4.2 简单语句和复合语句 70
3.4.3 条件语句 70
3.4.4 Pascal中的循环 71
3.4.5 with语句 72
3.5 过程和函数 73
3.5.1 引用参数 74
3.5.2 常量参数 74
3.5.3 不定数组参数 75
3.5.4 无类型不定数组参数 75
3.5.5 Delphi调用约定 76
3.5.6 对象方法 76
3.5.7 Forward声明 76
3.5.8 外部声明 77
3.5.9 过程类型 77
3.5.10 WINDOWS回调函数 78
第四章 面向对象的语言Object Pascal 79
4.1 类和对象 79
4.1.1 类的定义 79
4.1.2 创建Delphi的对象 81
4.1.3 在Delphi中TMember类的使用 81
4.1.4 构造函数的声明 82
4.2 类的封装性 83
4.2.1 专用、保护和公共部分 84
4.2.2 公共和Published部分 84
4.3 关于单元 85
4.3.1 类的接口部分 86
4.3.2 单元和作用域 86
4.3.3 单元和名称冲突 87
4.4 类的继承 88
4.4.1 继承和类型兼容 88
4.4.2 类的多态性 90
4.4.3 重载和重定义对象方法 92
4.4.4 动态方法 93
4.4.5 抽象方法 93
4.5 异常处理 93
第五章 高级Object Pascal 97
5.1 Self关键字 97
5.2 类方法与类的数据 99
5.3 对象方法指针 102
5.4 类的引用 103
第六章 键盘与鼠标的编程 105
6.1 Delphi事件与消息 105
6.1.1 Delphi事件 105
6.1.2 Delphi消息 106
6.2 键盘的编程 107
6.2.1 虚拟键 107
6.2.2 键盘事件与响应 107
6.2.3 键盘事件预览 109
6.2.4 键盘编程例子 109
6.3 鼠标控制与响应 111
6.3.1 鼠标事件 111
6.3.2 Microsoft智能鼠标 112
6.3.3 鼠标拖放 113
6.3.4 鼠标光标 116
6.4 直接处理事件 116
第七章 菜单的创建与处理 119
7.1 VCL控件 119
7.2 菜单技术基础 119
7.2.1 创建菜单 119
7.2.2 菜单设计 120
7.2.3 图形化菜单设计 123
7.2.4 菜单模板 123
7.2.5 菜单事件响应与命令模拟技术 124
7.3 智能菜单技术与设计 124
7.3.1 菜单项灰化 124
7.3.2 动态菜单 125
7.3.3 多重菜单的合并与分离 127
第八章 按钮和复选框的添加 129
8.1 VCL控件 129
8.2 基本按钮 130
8.2.1 命令按钮——Button 130
8.2.2 复选框——CheckBox 131
8.2.3 单选按钮——RadioButton 131
8.3 高级按钮 131
8.3.1 位图按钮——BitBtn 131
8.3.2 加速按钮——SpeedButton 133
8.3.3 增减按钮——UpDown 133
8.4 按钮组合技术 134
8.4.1 使用操作面板——Panel 135
8.4.2 使用组框——GroupBox 136
8.4.3 使用单选组框——RadioGroup 136
第九章 工具栏、状态栏与酷条设计 139
9.1 VCL控件 139
9.2 设计工具栏 140
9.2.1 加入工具栏前的考虑 140
9.2.2 工具按钮图标的制作 140
9.2.3 加入工具栏 142
9.2.4 加入工具按钮 142
9.2.5 浮动工具栏 143
9.2.6 定制工具栏 144
9.3 状态栏设计 146
9.3.1 加入状态栏 146
9.3.2 设计状态栏 147
9.4 创建酷条 148
9.4.1 包容所有控件还是部分 148
9.4.2 创建酷条 148
9.4.3 加入其它控件 149
9.5 设计酷条 150
9.5.1 菜单栏 150
9.5.2 酷条上图案设计 151
9.5.3 酷条上的动画 151
9.5.4 停靠工具栏——Delphi新特性 151
9.6 控制条 152
第十章 列表框设计 155
10.1 VCL控件 155
10.2 字符串类——TStrings 155
10.3 列表控件剖析 156
10.3.1 字符串存储 156
10.3.2 表项选择 157
10.3.3 字符串其它操作 157
10.4 字符串网格设计 159
10.4.1 字符串网格剖析 159
10.4.2 设计实例 161
10.5 列表视图 163
10.5.1 列表视图的数据——TListItem 163
10.5.2 列表视图控件 164
10.5.3 列表视图的程序设计 164
10.6 树视图 167
10.6.1 树视图的内容——TTreeNode 167
10.6.2 树视图控件 167
10.6.3 树视图控件的程序设计 168
10.6.4 外部数据与拖放 170
第十一章 字符串与文本 175
11.1 VCL控件 175
11.2 字符串类型 175
11.2.1 Object Pascal字符串类型 175
11.2.2 字符串函数 176
11.2.3 PChar字符串 178
11.2.4 Unicode支持 179
11.3 单行文本处理 180
11.3.1 Label与StaticText 180
11.3.2 EditBox与MaskEdit 181
11.4 多行文本处理 182
11.4.1 创建Memo对象 182
11.4.2 文本输入 183
11.4.3 文本编辑与更新 186
第十二章 目录与文件 187
12.1 VCL控件 187
12.2 公共文件对话框 188
12.3 目录与文件浏览 190
12.4 文件的拖放 193
12.4.1 Windows的拖放 193
12.4.2 文件的拖放 193
12.4.3 程序实例 195
12.5 文件的读写 196
12.5.1 文件类型 197
12.5.2 基本函数 198
12.5.3 读写文件 200
12.5.4 VCL对象的文件读写 200
第十三章 对话框 203
13.1 VCL控件 203
13.2 对话框的模态 204
13.3 公共对话框 204
13.3.1 颜色与ColorDialog 205
13.3.2 字体与FontDialog 206
13.3.3 SearchDialog与ReplaceDialog 207
13.3.4 PrintDialog与PrinterSetupDialog 208
13.4 消息对话框与其它对话框 210
13.4.1 Delphi消息对话框 210
13.4.2 Delphi输入框 212
13.4.3 Windows消息对话框 213
13.4.4 其它Windows对话框 214
13.5 对话框的一般设计过程 215
13.5.1 自述对话框的设计 215
13.5.2 动态创建对话框 216
13.6 多页对话框的设计 217
13.6.1 页面控制器——PageControl 217
13.6.2 TabControl和NoteBook 219
13.6.3 Win3.X下运行 220
13.7 对话框的停靠技术 221
第十四章 MDI应用程序 223
14.1 MDI基础 223
14.2 Action对象 224
14.3 MDI应用程序设计 226
14.3.1 使用Delphi模板 226
14.3.2 手工创建 227
14.3.3 加入第二种类型子窗口 227
第十五章 图形与图像应用程序 231
15.1 Delphi图形设计基础——Canvas 231
15.1.1 位置与像素 231
15.1.2 基本图元的绘制 232
15.1.3 控制图元属性 233
15.1.4 绘制文本 235
15.2 Delphi图形设计 235
15.2.1 使用窗体 235
15.2.2 使用PaintBox 236
15.2.3 使用Shape 236
15.2.4 Delphi控件表面图形的自绘制程序设计 236
15.2.5 创建Canvas对象 237
15.3 图像处理 238
15.3.1 图像格式与文件 238
15.3.2 TMetafile与TMetafileCanvas 239
15.4 利用Chart控件设计商业图形 240
15.5 3D图形程序设计 242
15.5.1 OpenGL简介 243
15.5.2 OpenGL函数 243
15.5.3 OpenGL程序设计 243
第十六章 打印机应用程序设计 251
16.1 Windows打印技术 251
16.2 Delphi打印编程 251
16.2.1 TPrinter类 252
16.2.2 程序设计 252
16.2.3 窗体的打印 256
16.2.4 打印预览 256
16.3 文本的打印 257
第十七章 数据库编程 259
17.1 数据库控件 259
17.2 数据库应用程序初步 260
17.2.1 数据库基本术语 260
17.2.2 创建最小的数据库应用程序 260
17.2.3 使用Database Form Wizard 262
17.2.4 数据模块 265
17.2.5 数据表的链接 266
17.3 数据库维护 267
17.3.1 浏览数据库 267
17.3.2 读写字段 268
17.3.3 查找记录 269
17.3.4 筛选记录 269
17.3.5 加入和删除记录 270
17.3.6 编辑记录 271
17.3.7 书签 271
17.4 SQL查询 272
17.4.1 Query控件 272
17.4.2 SQL属性 274
17.4.3 参数化查询 274
第十八章 剪贴板、DDE与OLE 277
18.1 剪贴板 277
18.1.1 TClipboard类 278
18.1.2 文本内容的复制与粘贴 279
18.1.3 图像的复制与粘贴 280
18.1.4 Delphi对象与剪贴板 281
18.2 动态数据交换(DDE) 283
18.2.1 动态数据交换过程 284
18.2.2 VCL控件 284
18.2.3 DDE初步 285
18.2.4 DDE服务器与客户机程序 287
18.3 对象链接与嵌入(OLE) 291
18.3.1 对象链接与嵌入 292
18.3.2 OLE包容器类(TOleContainer) 292
18.3.3 OLE包容器程序设计 294
18.3.4 OLE自动化(OLE Automation) 295
18.3.5 OLE自动化客户机程序举例 296