第1章 Delphi集成开发环境 1
1.1 Delphi 6.0简介 1
1.2 Delphi可视化开发环境简介 2
1.2.1对象编辑器(Object Inspector) 3
1.2.2工程管理器(Project Manager) 5
1.2.3代码编辑器 5
1.2.4 CPU观察窗口 6
1.2.5对象浏览器 7
1.3开发环境的优化 7
1.3.1编程环境设置 7
1.3.2自定义工具栏 9
1.3.3编辑环境设置 10
1.3.4工程设置 11
1.4一个简单的Delphi程序 12
1.5本章小结 13
第2章 Object Pascal语言 14
2.1 Object Pascal语言基础 14
2.1.1 Object Pascal入门 14
2.1.2注释语句 15
2.1.3标识符(Identifier) 16
2.1.4保留字(Reserved Word)和指令字(Directive) 16
2.1.5数据类型 17
2.1.6运算符(Operators) 27
2.1.7语句 31
2.1.8过程与函数 35
2.1.9作用范围 42
2.1.10规范化命名 43
2.2 Object Pascal语言的面向对象技术 43
2.2.1对象和类的概念 44
2.2.2 Object Pascal中类的定义 46
2.2.3方法 51
2.2.4多态性 54
2.2.5类运算符 57
2.2.6类方法和类引用 58
2.2.7单元文件 61
2.2.8 TObject:所有对象的祖先 63
2.3结构化异常处理 64
2.3.1try…except语句和try…finally语句 65
2.3.2 raise语句 67
2.3.3异常类 67
2.4方法与技巧 67
2.4.1设置代码模板 67
2.4.2设置提示信息 68
2.5 本章小结 69
第3章 常见组件编程 70
3.1窗体和组件 70
3.1.1概述 70
3.1.2窗体(Form) 71
3.1.3组件(Component) 74
3.1.4组件的使用 75
3.2文本输入类组件 78
3.2.1 TEdit组件 78
3.2.2 TMemo组件 78
3.2.3 TMaskEdit组件 78
3.2.4 TrichEdit 79
3.2.5 TLabel组件 79
3.2.6 TstaticText 79
3.2.7几点说明 80
3.3按钮类组件 80
3.3.1 TButton组件 81
3.3.2 TBitBtn组件 81
3.3.3 TSpeeaButton组件 81
3.3.4 TCheckBox组件组件 81
3.3.5 TRadioButton组件 82
3.4列表类组件 82
3.4.1 TLisBox组件 82
3.4.2 TComboBox组件 83
3.4.3 TTreeView组件 83
3.4.4 TlistView组件 84
3.4.5 TImageList组件 85
3.4.6 TCheckListBox组件 85
3.4.7 TDateTimePicker组件 85
3.5表格类组件 85
3.5.1 TDrawGrid组件 85
3.5.2 TStringGrid组件 86
3.5.3 TDBGrid组件 86
3.6刻度和进度类组件 86
3.6.1 TProgressBar组件 87
3.6.2 TstatusBar 87
3.7分组组件 87
3.7.1 TGroupBox组件 87
3.7.2 TRadioGroup组件 87
3.7.3 TPanel组件 87
3.7.4 TScrollBox组件 87
3.7.5 TtabControl组件 88
3.7.6 TPageControl组件 88
3.7.7 THeaderControl组件 88
3.7.8 容器组件组件 89
3.8特殊输入组件 89
3.8.1 TScrollBar组件 89
3.8.2 TTrackBar组件 90
3.8.3 TUpDown组件 91
3.8.4 THotKey组件 91
3.9菜单的使用 91
3.9.1主菜单 92
3.9.2鼠标右键弹出式菜单 93
3.9.3使用菜单模板 93
3.10工具栏和状态栏 94
3.10.1 ToolBar组件 94
3.10.2 TCoolBar组件 94
3.10.3 TControlBar组件 94
3.10.4 TStatusBar组件 95
3.11编程实例 95
3.11.1小型计算器 95
3.11.2文本编辑器的实现 108
3.12本章小结 116
第4章 键盘和鼠标事件 117
4.1事件概述 117
4.2键盘事件处理 117
4.2.1常用的键盘事件 117
4.2.2特殊的键盘事件 119
4.3鼠标事件处理 121
4.3.1常用鼠标事件 121
4.3.2拖曳事件 122
4.4本章小结 124
第5章 打印 125
5.1 TPrinter对象 125
5.2打印操作常用函数 126
5.3打印操作 128
5.3.1打印文本 128
5.3.2打印位图 129
5.3.3打印TMemo组件中的内容 130
5.3.4打印RTF格式的文本 131
5.4打印技巧 131
5.4.1获取显示当前打印机的分辨率 131
5.4.2尽量不要使用AssignPrn 131
5.4.3用打印机的点数做度量单位 131
5.4.4将打印结果直接送到打印机 132
5.4.5获取默认打印机的信息 132
5.5本章小结 132
第6章 文件管理 133
6.1文件类型和标准过程 133
6.1.1文本文件(text file) 133
6.1.2类型文件(typed file) 134
6.1.3无类型文件 136
6.1.4文件对话框组件 137
6.1.5 Win3.1相关组件 139
6.2文件管理常用函数和过程 139
6.2.1文件操作常用函数和过程 139
6.2.2目录操作常用函数和过程 143
6.2.3驱动器操作常用函数 146
6.2.4文件名操作常用函数 148
6.3本章小结 150
第7章 图形与图像 151
7.1常用图形对象及简单应用 151
7.1.1画布对象(TCanvas Object) 151
7.1.2画笔对象(TPen Object) 154
7.1.3画刷对象(TBrush Object) 158
7.1.4颜色类型(TColor type) 160
7.1.5其它属性 161
7.2基本图形的绘制 162
7.2.1直线的绘制 162
7.2.2矩形的绘制 163
7.2.3椭圆的绘制 164
7.2.4弧线的绘制 164
7.2.5多边形的绘制 165
7.2.6文本的输出 166
7.2.7插入图像 167
7.3画板程序开发 168
7.3.1窗体设计 168
7.3.2代码设计 172
7.3.3菜单代码设计 177
7.4动画绘图效果 182
7.5常用图像对象 185
7.5.1 TGraphies类 185
7.5.2 TPicture类 185
7.5.3位图对象(TBitmap Object) 186
7.5.4 Tlmage组件 187
7.6简单图像浏览器的实现 188
7.7本章小结 195
第8章 多媒体编程技术 196
8.1多媒体技术简介 196
8.2图像格式的处理 199
8.2.1位图 199
8.2.2 JPEG文件 201
8.3特殊图像显示效果的实现 203
8.3.1基本原理 204
8.3.2调用BitBlt 204
8.3.3调用CopyRect 205
8.3.4效果与算法实现 206
8.4利用图像控件实现动画效果 233
8.4.1 TImage组件变换法 234
8.4.2 TPanel组件变换法 235
8.4.3 Canvas画面变换法 235
8.5音频和视频文件的播放 236
8.5.1 WAV与MIDI文件简介 236
8.5.2什么是AVI 238
8.5.3 TMediaPlayer控件的使用 240
8.6媒体播放器的实现 243
8.7本章小结 248
第9章 OpenGL开发三维图形 250
9.1 OpenGL的基础 250
9.1.1 OpenGL的功能 250
9.1.2创建OpenGL应用程序的方法 251
9.1.3 OpenGL变量和函数的约定 256
9.1.4 OpenGL的初始化 257
9.2 OpenGL基本图形的绘制 260
9.2.1图形的颜色 261
9.2.2简单图形的绘制 262
9.2.3简单二次曲面 268
9.3 OpenGL中的变换 273
9.3.1矩阵操作过程 273
9.3.2投影变换 274
9.3.3几何变换矩阵 277
9.4光照和纹理 281
9.4.1光照和光源过程及应用 281
9.4.2材质和光照模型 282
9.4.3纹理 284
9.5本章小结 290
第10章 多线程应用程序 291
10.1进程与线程 291
10.1.1进程和线程的概念 291
10.1.2线程调度 292
10.2 TThread对象 292
10.2.1 Tthread类的属性 292
10.2.2 TThread类的方法 293
10.2.3 TThread类的事件 294
10.2.4创建线程类 294
10.2.5线程的初始化操作 295
10.2.6实现线程对象的功能 295
10.3线程的同步 296
10.4线程的优先级 302
10.5本章小结 302
第11章 动态链接库 303
11.1概述 303
11.1.1 DLL的概念 303
11.1.2静态链接与动态链接 304
11.1.3使用DLL的目的 305
11.2创建动态链接库 306
11.3使用动态链接库 309
11.4本章小结 310
第12章 Delphi数据库的基本概念 311
12.1数据库系统概述 311
12.1.1使用数据库 311
12.1.2数据库管理系统(DBMS) 311
12.1.3数据库应用程序 312
12.2 Delphi的数据库特性及功能简介 313
12.2.1 Delphi的数据库特性 314
12.2.2 Delphi可以访问的数据源(DataSource) 315
12.2.3本地数据库和远程数据库 316
12.3 Delphi数据库应用程序的体系结构 317
12.3.1选择合适的体系结构 318
12.3.2可伸缩性 319
12.3.3单层的数据库应用程序 320
12.3.4两层的数据库应用程序 320
12.3.5多层的数据库应用程序 321
12.3.6数据访问组件 321
12.3.7数据控制组件 323
12.4 Delphi数据库应用程序的开发方法和步骤 324
12.4.1概述 324
12.4.2数据库应用程序的开发步骤 325
12.4.3交付数据库应用程序 326
12.4.4安装BDE 327
12.4.5安装SQL Link 328
12.5本章小结 330
第13章 简单数据库应用程序的创建 331
13.1简单的基于单表的数据库应用 331
13.1.1选择相关的组件 331
13.1.2设置组件的属性 331
13.1.3运行程序 333
13.2 利用TDBNavigator组件创建存取程序 334
13.2.1创建应用程序窗体 334
13.2.2使用TDBNavigator组件移动记录指针 335
13.2.3定制TDBNavigator组件 336
13.3创建主要——明细数据库应用程序 336
13.3.1一对多关系的主要——明细型数据库应用程序 337
13.3.2一对多——多关系的数据库应用 338
13.4字段对象的使用 339
13.4.1字段对象的类型 340
13.4.2创建永久性的字段对象 340
13.4.3字段对象的属性设置 341
13.4.4字段对象的访问 343
13.4.5设定字段对象的显示格式 346
13.4.6自定义字段以及计算字段对象的创建 347
13.5查询数据库中的记录 350
13.5.1使用GotoKey方法查找数据记录 350
13.5.2使用FindKey方法查找数据库中的记录 352
13.5.3利用GotoNcarcst和FindNearest执行不精确查找 353
13.6修改数据库中的记录 354
13.6.1 Edit方法Post方法 355
13.6.2实现异常保护的try…finally语句 356
13.7插入和删除记录 359
13.7.1逐步插入方法 360
13.7.2调用InsertRecord插入记录 360
13.8输入数据的有效性验证 363
13.9本章小结 366
第14章 数据交换 367
14.1 Windows剪贴板及其应用 367
14.1.1概述 367
14.1.2 TClipboard的属性和方法 367
14.1.3文本与Windows剪贴板 370
14.1.4图形与剪贴板 373
14.2数据的动态交换 374
14.2.1 DDE概述 374
14.2.2 DDE客户端应用程序 375
14.2.3服务端应用程序 381
14.3对象的链接与嵌入 383
14.3.1 OLE技术概述 383
14.3.2 TOleContainer的属性 385
14.3.3 TOleContainer的方法 387
14.4多格式文件浏览器 389
14.4.1 OLE服务器的菜单和工具栏 390
14.4.2浏览器设计 391
14.5本章小结 395
第15章 应用程序的分发和包装 396
15.1应用程序包装技巧 396
15.1.1计算机的关机或重新启动 396
15.1.2禁止应用程序的第二实例启动 397
15.1.3封面窗口 398
15.1.4椭圆窗口启动封面 399
15.1.5读写Windows 95注册文件 399
15.1.6创建应用程序组和图标 400
15.2应用程序的分发 401
15.3本章小结 403
第16章 其它编程技巧 404
16.1获取Windows版本信息 404
16.2获取CPU信息 405
16.3启动屏幕保护 407
16.4使窗口标题栏闪烁 407
16.5获取窗口标题栏中的文字 408
16.6使窗口背景颜色渐变 409
16.7将WAV文件做到EXE文件里 410
16.8按字段为TDBGrid着色 411
16.9使用资源文件 413
16.10具有不同字体的对话框 417
16.11显示旋转字体 418
16.12本章小结 419
附录1 Inprise Delphi属性、函数、事件参考 420
附录2 Delphi站点整理 429
附录3 Delphi问题集 431
附录4 Delphi编译错误信息中英文对照 435