第1章 Delphi 6.0基本概况 1
1.1 Delphi 6.0概述 2
1.1.1 安装与卸载 2
1.1.2 新增加功能 10
1.2 Delphi的集成开发环境(IDE) 11
1.2.1 对象编辑器 12
1.2.2 工程管理器 13
1.2.3 代码编辑器 13
1.2.4 CPU观察窗口 14
1.2.5 对象浏览器 15
1.3 开发环境的自定义 15
1.3.1 Environment Options对话框 16
1.3.2 Customize对话框 17
1.3.3 Editor Properties对话框 17
1.3.4 Project Options对话框 18
1.4 第一个Delphi程序 19
1.5 小结 20
第2章 Object Pasca Ⅰ编程技术 21
2.1 编程基础 22
2.1.1 Delphi开发程序的种类 22
2.1.2 语句注释 23
2.1.3 标识符 24
2.1.4 保留字与指令字 24
2.1.5 数据类型 25
2.1.6 运算符 35
2.1.7 程序控制语句 39
2.1.8 过程与函数 42
2.1.9 作用域 49
2.1.10 命名的规范化 50
2.2 面向对象编程(OOP) 50
2.2.1 对象的三个特性 51
2.2.2 类的定义 53
2.2.3 对象的方法 58
2.2.4 对象的多态性 60
2.2.5 类运算符 63
2.2.6 类的方法与类的引用 65
2.2.7 单元(unit)文件的组成 67
2.2.8 Tobject对象 69
2.3 异常处理机制 70
2.3.1 try...except与try...finally 71
2.3.2 raise语句 73
2.3.3 异常类机制 74
2.4 程序设计知识点滴 74
2.4.1 代码模板 74
2.4.2 提示信息 75
2.5 小结 75
第3章 可视化界面的编程 76
3.1 窗体(Form)与组件(Component) 77
3.1.1 组件的图示说明 77
3.1.2 窗体属性、方法与事件 78
3.1.3 窗体操作技巧 81
3.1.4 主要组件栏的作用 88
3.1.5 组件的操作 89
3.2 文本类组件 91
3.2.1 TEdit 91
3.2.2 TMemo 92
3.2.3 TMaskEdit 92
3.2.4 TRichEdit 92
3.2.5 TLabel 92
3.2.6 TStaticText 93
3.2.7 程序设计知识点滴 93
3.3 按钮类组件 93
3.3.1 按钮类组件 93
3.3.2 TButton 94
3.3.3 TSpeedButton 94
3.3.4 TCheckBox 94
3.3.5 TRadioButton 94
3.4 列表类组件 95
3.4.1 TListBox 95
3.4.2 TComboBox 95
3.4.3 TTreeView 96
3.4.4 TListView 97
3.4.5 TImageList 97
3.4.6 TCheckListBox 97
3.4.7 TDateTimePicker 98
3.5 表格类组件 98
3.5.1 TDrawGrid 98
3.5.2 TStringGrid 99
3.5.3 TDBGrid 99
3.6 刻度与进度类组件 99
3.6.1 TProgressBar 99
3.6.2 TStatusBar 99
3.7 分组组件 100
3.7.1 TGroupBox 100
3.7.2 TRadioGroup 100
3.7.3 TPanel 100
3.7.4 TScrollBox 100
3.7.5 TTabControl 100
3.7.6 TPageControl 101
3.7.7 THeaderControl 101
3.7.8 容器组件 101
3.8 范围组件 102
3.8.1 TScrollBar 102
3.8.2 TTrackBar 102
3.8.3 TUpDown 103
3.8.4 THotKey 103
3.9 菜单组件 103
3.9.1 TMainMenu 104
3.9.2 TPopupMenu 105
3.9.3 菜单模板的操作 105
3.10 工具栏组件与状态栏组件 106
3.10.1 ToolBar 106
3.10.2 TCoolBar 106
3.10.3 TControlBar 107
3.10.4 TStatusBar 107
3.11 综合应用编程举例 107
3.11.1 例一 107
3.11.2 例二 120
3.12 小结 127
第4章 事件响应编程 128
4.1 基本概念 129
4.2 键盘的响应 129
4.2.1 一般键盘事件 129
4.2.2 特殊键盘事件 130
4.3 鼠标的响应 133
4.3.1 一般鼠标事件 133
4.3.2 拖曳事件 133
4.4 小结 135
第5章 关于打印的编程 136
5.1 打印的实现过程 137
5.2 打印函数列表 138
5.3 简单打印输出的实现 140
5.3.1 文本的打印输出 140
5.3.2 位图的打印输出 141
5.3.3 AssignPrn()的使用 142
5.3.4 RTF文本的打印输出 143
5.4 程序设计知识点滴 143
5.4.1 打印机分辨率的获取 143
5.4.2 避免AssignPrn的使用 143
5.4.3 度量单位的选择 143
5.4.4 将打印结果直接送到打印机 144
5.4.5 GetProfileString的使用 144
5.5 小结 144
第6章 关于文件管理的编程 145
6.1 文件类型与组件 146
6.1.1 文本文件 146
6.1.2 类型文件 147
6.1.3 无类型文件 149
6.1.4 文件对话框组件 150
6.1.5 Win3.1相关组件 152
6.1.6 文件操作实例 152
6.2 函数的使用 154
6.2.1 文件操作函数 154
6.2.2 目录函数 157
6.2.3 驱动器函数 160
6.2.4 文件名函数 162
6.3 小结 164
第7章 图形图像编程 165
7.1 图形对象及例程 166
7.1.1 画布对象 166
7.1.2 画笔对象 169
7.1.3 画刷对象 173
7.1.4 颜色类型 174
7.1.5 Canvas的其它属性 175
7.2 绘制图形 176
7.2.1 直线(MoveTo与LineTo) 177
7.2.2 矩形(Rectangle) 177
7.2.3 椭圆(Ellipse) 178
7.2.4 弧线(Arc) 179
7.2.5 多边形(Polygon) 179
7.2.6 文本(TextOut) 180
7.2.7 插入图像(Draw) 181
7.3 综合应用实例之一 182
7.3.1 窗体规划 182
7.3.2 程序代码设计 185
7.3.3 菜单代码编写 190
7.4 综合应用实例之二 194
7.5 图像对象 197
7.5.1 TGraphics类 197
7.5.2 TPicture类 197
7.5.3 位图对象 198
7.5.4 TImage组件 199
7.6 综合应用实例之三 200
7.7 小结 207
第8章 关于多媒体编程 208
8.1 多媒体的定义与应用 209
8.2 JPEG与BMP格式 212
8.2.1 BMP格式 212
8.2.2 JPEG格式 214
8.3 图像显示效果的实现 216
8.3.1 概述 216
8.3.2 BitBlt的使用 217
8.3.3 CopyRect的使用 218
8.3.4 效果的实现 218
8.4 动画效果的实现 245
8.4.1 TImage的使用 245
8.4.2 TPanel的使用 246
8.4.3 Canvas的使用 247
8.5 音频与视频的实现 247
8.5.1 WAV与MIDI文件 247
8.5.2 AVI文件 249
8.5.3 TMediaPlayer的使用 252
8.6 应用举例 254
8.7 小结 260
第9章 关于三维图形的编程 261
9.1 OpenGL基本知识 262
9.1.1 功能 262
9.1.2 创建方法 263
9.1.3 变量与函数 268
9.1.4 初始化 269
9.2 图形绘制 272
9.2.1 颜色 272
9.2.2 绘制简单图形 274
9.2.3 绘制二次曲面 279
9.3 变换 284
9.3.1 矩阵变换 284
9.3.2 投影变换 285
9.3.3 几何变换 288
9.4 光照与纹理 292
9.4.1 光照及光源 292
9.4.2 材质与光照 293
9.4.3 纹理 295
9.5 小结 300
第10章 线程 301
10.1 进程与线程 302
10.1.1 基础知识 302
10.1.2 调度方式 303
10.2 TThread对象的使用 303
10.2.1 属性 303
10.2.2 方法 304
10.2.3 事件 305
10.2.4 创建 305
10.2.5 初始化 306
10.2.6 Execute方法 306
10.3 同步 306
10.4 优先级 312
10.5 小结 313
第11章 动态链接库(DLL) 314
11.1 基础知识 315
11.1.1 什么是DLL 315
11.1.2 静态链接与动态链接 316
11.1.3 DLL的作用 317
11.2 DLL的创建 318
11.3 DLL的使用 320
11.4 小结 322
第12章 数据库基础知识 323
12.1 基本概念 324
12.1.1 影响因素 324
12.1.2 DBMS 324
12.1.3 数据库应用程序 325
12.2 Delphi数据库的特性与功能 326
12.2.1 特性 327
12.2.2 访问的数据源 329
12.2.3 本地与远程数据库 329
12.3 数据库组件的结构 331
12.3.1 结构的选择 331
12.3.2 用户界面与数据访问链路分开 332
12.3.3 单层应用程序 333
12.3.4 两层应用程序 333
12.3.5 多层应用程序 334
12.3.6 数据访问组件介绍 334
12.3.7 数据控制组件介绍 336
12.4 程序的开发方法与步骤 337
12.4.1 开发情况 337
12.4.2 开发步骤 338
12.4.3 数据库应用程序所需文件 339
12.4.4 BDE的安装 339
12.4.5 SQL Link的安装 341
12.5 小结 343
第13章 数据库应用程序创建初步 344
13.1 创建基于单表数据库应用 345
13.1.1 组件的选择 345
13.1.2 属性的设置 345
13.1.3 程序的运行 346
13.2 TDBNavigator的使用 348
13.2.1 规划界面 348
13.2.2 TDBNavigator的使用 349
13.2.3 TDBNavigator的定制 349
13.3 主要——明细数据库应用程序的创建 350
13.3.1 一对多关系的应用程序 350
13.3.2 一对多——多关系的应用程序 351
13.4 TField对象 353
13.4.1 类型 353
13.4.2 永久性对象的创建 353
13.4.3 属性设置 354
13.4.4 访问字段对象 356
13.4.5 设定显示格式 359
13.4.6 创建其他字段 360
13.5 数据库查询记录的实现 362
13.5.1 GotoKey的使用 362
13.5.2 FindKey的使用 364
13.5.3 GotoNearest与FindNearest的使用 364
13.6 数据库修改记录的实现 366
13.6.1 Edit与Post的使用 367
13.6.2 try...finally语句的使用 368
13.7 数据库插入和删除记录的实现 371
13.7.1 逐步插入方法的三个步骤 372
13.7.2 InsertRecord的使用 372
13.8 有效性验证问题 375
13.9 小结 377
第14章 交换数据的实现 378
14.1 从Windows剪贴板上获取数据 379
14.1.1 TClipboard对象 379
14.1.2 TClipboard对象 379
14.1.3 交换文本的三种方法 382
14.1.4 图形与Windows剪贴板交换数据 384
14.2 DDE技术 386
14.2.1 基本概念 386
14.2.2 客户端应用程序 386
14.2.3 服务端应用程序 391
14.3 OLE技术 393
14.3.1 基本概念 393
14.3.2 TOleContainer的属性 395
14.3.3 TOleContainer的方法 397
14.4 OLE编程举例 399
14.4.1 界面规划 399
14.4.2 程序设计 401
14.5 小结 404
第15章 分发与包装应用程序 405
15.1 包装应用程序 406
15.1.1 关机与重启的计算机 406
15.1.2 禁止第二实例启动 407
15.1.3 提示屏窗口 408
15.1.4 启动封面设计 409
15.1.5 读写注册文件 409
15.1.6 创建程序与图标 410
15.2 分发应用程序 411
15.3 小结 412
第16章 Delphi编程综合运用 413
16.1 GetVersionEx的使用 414
16.2 GetSystemInfo的使用 415
16.3 SendMessage的使用 417
16.4 FlashWindow的使用 417
16.5 GetWindow的使用 418
16.6 窗口颜色渐变的实现 419
16.7 EXE文件里加入WAV文件 420
16.8 按字段着色 421
16.9 资源文件的使用 423
16.10 对话框不同字体的实现 426
16.11 旋转字体的实现 428
16.12 数据库感知组件实例 429
16.13 小结 438
附录1 属性、函数、事件一览表 439
附录2 Delphi参考站点一览表 448
附录3 Delphi疑难问题解答 450
附录4 Delphi常用虚拟键值表 454
附录5 Delphi编译错误信息一览表 459