第1章 Delphi 7开发环境 1
1.1 Delphi概述 1
1.1.1 Delphi简介 1
1.1.2 Delphi的发展历程 1
1.1.3 Delphi 7.0的新特性 1
1.2 Delphi 7.0集成开发环境 2
1.2.1 Delphi集成开发环境概述 2
1.2.2 Delphi集成开发环境 2
1.2.3 Delphi主菜单 3
1.2.4 Delphi工具栏 6
1.2.5 Delphi组件面板 7
1.2.6 对象树状视图 8
1.2.7 对象查看器 9
1.2.8 代码编辑器 9
1.2.9 代码浏览器 10
1.2.10 项目管理器 10
1.3 定制集成开发环境 11
1.3.1 定制编程环境 11
1.3.2 定制工具栏 12
1.3.3 定制Delphi的组件面板 12
1.3.4 定制代码编辑器 13
1.3.5 保存定制的开发环境 13
1.4 安装其他开发组件 14
1.4.1 安装ActiveX组件 14
1.4.2 安装第三方组件 15
1.5 安装其他开发工具 17
1.5.1 安装打包工具 17
1.5.2 安装InterBase数据库 18
1.6 有效使用光盘资源 19
1.6.1 通过Delphi自带的示例学习使用Delphi 19
1.6.2 在Delphi中加载报表组件(QReport) 19
1.7 有效利用帮助资源 20
1.7.1 Delphi帮助文档的使用 20
1.7.2 Delphi附属开发环境的帮助 21
1.7.3 Delphi中API帮助的使用 22
第2章 过程与函数的应用 23
2.1 过程与函数简介 23
2.2 过程、函数的定义与调用 23
2.2.1 过程的声明、定义与调用 23
2.2.2 函数的声明、定义与调用 24
2.3 过程、函数之间参数传递 25
2.3.1 形参与实参 25
2.3.2 按值传递和按址传递 26
2.3.3 参数类型 27
2.4 嵌套调用和递归调用 32
2.4.1 嵌套调用 32
2.4.2 递归调用 33
2.5 过程和函数中变量的作用域 35
2.6 函数的重载 35
第3章 类的学习与应用 37
3.1 类的简介 37
3.1.1 类的概念 37
3.1.2 类的定义 37
3.2 对象 38
3.2.1 对象的声明和实例化 38
3.2.2 对象的构造与析构 39
3.2.3 类与对象的关系 41
3.3 属性 41
3.3.1 属性的概念 41
3.3.2 属性的访问 41
3.3.3 属性的存储 42
3.3.4 属性的索引 43
3.3.5 如何使用数组属性 43
3.4 方法 44
3.4.1 方法的概念 44
3.4.2 方法的类型 44
3.5 封装 45
3.5.1 封装的概念 45
3.5.2 成员的可见性 45
3.5.3 逻辑封装 46
3.5.4 物理封装 46
3.6 继承 47
3.6.1 继承的概念 47
3.6.2 基类 47
3.6.3 继承的可见性 48
3.6.4 属性、方法的继承 48
3.7 多态 52
3.7.1 认识多态 52
3.7.2 多态的实现 52
3.7.3 抽象类与多态 54
3.8 类运算符as、is 55
3.9 异常处理 55
3.9.1 处理异常 55
3.9.2 嵌套使用异常 57
3.9.3 使用异常对象 58
第4章 多线程的应用 59
4.1 线程的基础知识 59
4.1.1 线程与进程的关系 59
4.1.2 何时使用多线程 59
4.1.3 线程调度 60
4.2 VCL线程的使用 60
4.2.1 TThread类 60
4.2.2 线程类的创建 62
4.2.3 线程函数 63
4.2.4 线程终止和异常 64
4.3 Windows线程的使用 65
4.3.1 线程的构造与创建 65
4.3.2 线程终止 66
4.3.3 线程调度与优先级 66
4.3.4 消息队列 68
4.4 在Delphi语言中使用线程同步 69
4.4.1 Synchronize函数 69
4.4.2 Lock与UnLock方法 70
4.4.3 TCriticalSection类 72
4.4.4 TEvent类 74
4.4.5 WaitFor方法 75
4.5 利用API实现线程同步 76
4.5.1 互斥对象 76
4.5.2 信号量对象 77
第5章 消息处理技术 79
5.1 消息的介绍 79
5.1.1 消息的基本概念 79
5.1.2 消息是如何工作的 80
5.2 消息机制原理 80
5.2.1 消息的构成 80
5.2.2 消息的处理过程 81
5.2.3 消息的返回值 81
5.3 消息的分类 82
5.3.1 标准消息 82
5.3.2 组件通知消息 82
5.3.3 用户自定义消息 82
5.4 消息与事件 83
5.4.1 消息的发送 83
5.4.2 消息接收 84
5.4.3 VCL消息处理 85
5.4.4 消息与事件的关系 86
第6章 企业QQ 89
6.1 企业QQ概述 89
6.1.1 主要功能 89
6.1.2 界面预览 90
6.2 主要实现技术 90
6.2.1 类的持久化 90
6.2.2 类与流的二进制转换 91
6.2.3 消息类的多态 92
6.2.4 实现组件的消息传递 93
6.3 企业QQ的实现 95
6.3.1 公共类的实现 95
6.3.2 服务器端实现 107
6.3.3 客户端实现 108
6.4 程序调试与发布 111
第7章 自制帮助工具 113
7.1 帮助工具概述 113
7.1.1 主要功能 113
7.1.2 界面预览 113
7.2 主要实现技术 114
7.2.1 流的读写技术 114
7.2.2 资源文件的读写技术 118
7.2.3 树节点与HTML文件的关联 118
7.2.4 OLE操作Word文档转换技术 119
7.3 帮助工具的实现 119
7.3.1 Word与HTML转换的实现 119
7.3.2 帮助工具设计器实现 121
7.3.3 帮助工具运行程序实现 126
7.4 程序调试与发布 130
第8章 打包安装工具 131
8.1 打包工具概述 131
8.1.1 主要功能 131
8.1.2 界面预览 132
8.2 主要实现技术 133
8.2.1 各种系统目录的获取 133
8.2.2 文件图标的获取 134
8.2.3 快捷方式的创建 134
8.2.4 向控制面板中写信息 136
8.2.5 文件的合并与拆分 137
8.2.6 安装信息与文件的卸载 138
8.3 打包安装工具的实现 139
8.3.1 打包安装公共类的实现 139
8.3.2 打包工具设计器实现 143
8.3.3 打包安装程序的实现 154
8.3.4 打包卸载程序的实现 160
8.4 程序调试与发布 163
第9章 板材排料 165
9.1 板材排料概述 165
9.1.1 主要功能 165
9.1.2 界面预览 166
9.2 主要实现技术 166
9.2.1 矩形排样计算方法 166
9.2.2 板材零件集合类型的处理 167
9.2.3 板材零件的缩放显示 169
9.2.4 如何制作板材零件选中时的标尺 170
9.2.5 对计算排料结果进行打印 172
9.2.6 如何判断某一点是否在已排零件内部 173
9.2.7 板材零件的自动命名 173
9.2.8 记忆打印机的设置信息 174
9.3 板材排料的实现 175
9.3.1 创建板材类型及零件的类型信息 175
9.3.2 生成板材零件集合 176
9.3.3 对板材的排料 178
9.3.4 生成板材排料结果 184
9.3.5 对排料结果的打印预览 193
9.4 程序调试与发布 196
第10章 进销存软件 199
10.1 进销存软件概述 199
10.1.1 主要功能 199
10.1.2 界面预览 199
10.2 主要实现技术 203
10.2.1 通用数据查询的实现 203
10.2.2 通用单据查询窗体的实现 205
10.2.3 通用数据选择窗体 208
10.2.4 如何使用临时数据集存储数据 209
10.2.5 对表格编辑的数据实时汇总 211
10.2.6 同一窗体资源的不同业务处理 212
10.2.7 消息窗体的设计 213
10.2.8 单据编号的设计 214
10.2.9 窗体皮肤的应用 214
10.3 进销存软件的实现 216
10.3.1 系统设置模块的实现 216
10.3.2 基础信息管理模块的实现 218
10.3.3 各种单据窗体的实现 224
10.3.4 单据汇总表的实现 230
10.3.5 商品汇总表的实现 235
10.3.6 库存查询的实现 238
10.4 程序调试与发布 243
第11章 窗体皮肤组件 245
11.1 窗体皮肤组件概述 245
11.1.1 主要功能 245
11.1.2 界面预览 245
11.2 主要实现技术 246
11.2.1 属性方法的定义与实现 246
11.2.2 如何使控件可放置子控件 246
11.2.3 如何实现组件属性分类 247
11.2.4 如何解决组件删除时的错误 249
11.2.5 如何实现皮肤的自动更新 249
11.2.6 标题栏图标的绘制 251
11.2.7 组件的注册 251
11.3 窗体皮肤组件的实现 252
11.3.1 资源包分类属性的实现 252
11.3.2 资源包的实现 253
11.3.3 窗体元素类的实现 255
11.3.4 窗体皮肤组件的实现 256
11.4 程序调试与发布 263
第12章 导航面板组件 265
12.1 导航面板组件概述 265
12.1.1 主要功能 265
12.1.2 界面预览 265
12.2 主要实现技术 266
12.2.1 图片资源的使用 266
12.2.2 分组信息的绘制 266
12.2.3 组中项信息的绘制 267
12.2.4 滚动条滑块大小的计算 268
12.2.5 组、项数据信息的存储 269
12.2.6 组件编辑器与属性编辑器的实现 270
12.3 导航面板组件的实现 272
12.3.1 导航面板组件分组与项的定义与实现 272
12.3.2 自制滚动条的定义与实现 275
12.3.3 导航面板样式类的定义与实现 278
12.3.4 导航面板组件的实现 284
12.3.5 分组与项编辑器的实现 285
12.4 程序调试与发布 286
第13章 短信息管理平台 287
13.1 短信息管理平台概述 287
13.1.1 主要功能 287
13.1.2 界面预览 287
13.2 主要实现技术 288
13.2.1 短信猫操作 288
13.2.2 列表导航的动态生成 289
13.2.3 如何使列表中的行对应数据表中的记录 291
13.2.4 临时内存数据集的创建 292
13.3 短信息管理平台的实现 293
13.3.1 数据模块的创建 293
13.3.2 常用联系人分组管理的实现 294
13.3.3 常用联系人的实现 295
13.3.4 常用短语分类管理的实现 298
13.3.5 常用短语信息管理的实现 299
13.3.6 信息发送的实现 301
13.3.7 信息收发管理的实现 303
13.4 程序调试与发布 306
第14章 语音卡录音系统 307
14.1 语音卡录音系统概述 307
14.1.1 主要功能 307
14.1.2 界面预览 308
14.2 主要实现技术 308
14.2.1 语音卡的初始化操作 309
14.2.2 来电号码的获取 310
14.2.3 语音卡的放音操作 311
14.2.4 语音卡内线连通的实现 311
14.2.5 语音卡录音功能的实现 312
14.3 语音卡录音系统的实现 313
14.3.1 语音卡操作类的定义与实现 313
14.3.2 录音系统登录模块的实现 316
14.3.3 录音系统用户管理模块的实现 317
14.3.4 录音系统地区管理的实现 318
14.3.5 录音系统并下号码管理的实现 320
14.3.6 录音系统录音查听模块的实现 322
14.3.7 录音系统录音信息统计的实现 325
14.3.8 语音卡的初始化操作 327
14.4 程序调试与发布 328
第15章 企业助理系统 329
15.1 企业助理系统概述 329
15.1.1 主要功能 329
15.1.2 界面预览 330
15.2 主要实现技术 331
15.2.1 服务器端DCOM的创建 331
15.2.2 DCOM客户端的远程连接与调用 332
15.2.3 利用DCOM向服务器端上传文件 333
15.2.4 DCOM服务器端对客户信息的存储 334
15.3 企业助理系统的实现 335
15.3.1 服务器端管理功能的实现 335
15.3.2 客户端系统登录模块的实现 337
15.3.3 工作记录管理模块的实现 339
15.3.4 加班信息管理的实现 346
15.3.5 个人备忘录管理的实现 349
15.3.6 消息发送模块的实现 351
15.3.7 企业公告栏的实现 355
15.4 程序调试与发布 357
第16章 企业文档管理系统 359
16.1 企业文档管理系统概述 359
16.1.1 主要功能 359
16.1.2 界面预览 360
16.2 主要实现技术 360
16.2.1 服务器端的创建 361
16.2.2 服务器端托盘图标的实现 363
16.2.3 应用线程实现文件的上传与下载 364
16.2.4 批量操作的应用 366
16.2.5 如何实现文件的自动上传功能 368
16.3 企业文档管理系统的实现 371
16.3.1 资料集的管理 372
16.3.2 客户端对文件及文件夹的操作 374
16.3.3 文件及文件夹属性的实现 377
16.3.4 文档资料的查询 381
16.3.5 用户管理的实现 383
16.4 程序调试与发布 385
第17章 视频图像录制 387
17.1 视频图像录制概述 387
17.1.1 主要功能 387
17.1.2 界面预览 387
17.2 主要实现技术 388
17.2.1 自定义属性编辑器的实现 388
17.2.2 视频头连接与断开的实现 390
17.2.3 图像信息的捕获 392
17.2.4 AVI文件录制的实现 392
17.3 视频图像录制工具的实现 394
17.3.1 自定义异常类的实现 394
17.3.2 视频控制组件的实现 394
17.3.3 视频控制实例的实现 402
17.4 程序调试与发布 405
第18章 住房公积金管理系统 407
18.1 住房公积金管理系统概述 407
18.1.1 主要功能 407
18.1.2 界面预览 408
18.2 主要实现技术 410
18.2.1 调用Windows系统的计算器 410
18.2.2 如何使用快捷键 410
18.2.3 设置TListBox组件的风格 411
18.2.4 限制用户输入的编辑框 411
18.2.5 通过消息屏蔽使窗体不可移动 411
18.3 住房公积金管理系统的实现 412
18.3.1 主窗体设计 412
18.3.2 数据模块的实现 422
18.3.3 职工档案模块的实现 423
18.3.4 期初余额模块的实现 427
18.3.5 按月自动登账模块的实现 428
18.3.6 利息结算模块的实现 430
18.3.7 余额表查询模块的实现 432
18.3.8 用户管理模块的实现 434
18.3.9 程序中报表的实现 435
18.4 程序调试与发布 438
第19章 健身房管理系统 441
19.1 健身房管理系统概述 441
19.1.1 主要功能 441
19.1.2 界面预览 442
19.2 主要实现技术 443
19.2.1 利用代码动态创建窗体 443
19.2.2 防止输入非法字符 444
19.2.3 限制表格中某列数据编辑 445
19.2.4 在窗体关闭时释放窗体 445
19.2.5 在窗体的客户区域拖动窗体 446
19.2.6 在列表视图中拖动视图项 446
19.3 健身房管理系统的实现 447
19.3.1 主窗体的实现 447
19.3.2 窗体框架的实现 451
19.3.3 系统登录模块的实现 455
19.3.4 员工信息模块的实现 457
19.3.5 服务项目模块的实现 460
19.3.6 操作员管理模块的实现 464
19.3.7 设备入库管理模块的实现 467
19.3.8 娱乐项目收费模块的实现 472
19.3.9 娱乐收费查询模块的实现 476
19.4 程序调试与发布 479
第20章 图书综合管理系统 483
20.1 图书综合管理系统概述 483
20.1.1 主要功能 483
20.1.2 界面预览 484
20.2 主要实现技术 486
20.2.1 图书类别的树型结构 486
20.2.2 自动生成的号码 488
20.2.3 Office Web Component的应用 489
20.2.4 创建触发器 491
20.3 图书综合管理系统的实现 491
20.3.1 主窗体的实现 491
20.3.2 带颜色菜单的实现 495
20.3.3 数据模块的实现 498
20.3.4 系统登录模块的实现 499
20.3.5 图书信息管理模块的实现 501
20.3.6 入库管理模块的实现 503
20.3.7 销售管理模块的实现 505
20.3.8 图书借阅与归还模块的实现 506
20.3.9 操作员管理模块的实现 509
20.4 程序调试与发布 511
第21章 房地产信息管理系统 513
21.1 房地产信息管理系统概述 513
21.1.1 主要功能 513
21.1.2 界面预览 514
21.2 主要实现技术 516
21.2.1 利用Excel分析房屋资料数据 516
21.2.2 控制移动窗体中组件的焦点 517
21.2.3 事务在数据库中的应用 518
21.2.4 在关闭窗口前加入确认对话框 518
21.3 房地产信息管理系统的实现 518
21.3.1 主窗体的实现 518
21.3.2 工具栏拖曳 519
21.3.3 房型资料录入模块的实现 520
21.3.4 楼盘楼房资料录入模块的实现 523
21.3.5 房屋销售管理模块的实现 524
21.3.6 客户数据分析模块的实现 528
21.4 程序调试与发布 531
第22章 批发零售管理系统 533
22.1 批发零售管理系统 533
22.1.1 主要功能 533
22.1.2 界面预览 534
22.2 主要实现技术 536
22.2.1 更改TDBGrid组件某些行字体的颜色 536
22.2.2 将窗体拖入面板中 537
22.2.3 记录系统错误日志 537
22.2.4 控制POS机打开钱箱 538
22.3 批发零售管理系统的实现 538
22.3.1 主窗体的实现 538
22.3.2 基类窗体TBase_Form的实现 540
22.3.3 基类窗体BaseBrowser_Form的实现 542
22.3.4 员工信息管理模块的实现 543
22.3.5 商品信息管理模块的实现 547
22.3.6 仓库信息管理模块的实现 550
22.3.7 入库管理模块的实现 552
22.3.8 出库管理模块的实现 556
22.3.9 入库退货管理模块的实现 560
22.3.10 POS机零售管理模块的实现 562
22.3.11 商品批发管理模块的实现 565
22.3.12 入库单据查询模块的实现 568
22.3.13 入库商品查询模块的实现 569
22.3.14 销售单据查询模块的实现 570
22.3.15 销售商品查询模块的实现 572
22.4 程序调试与发布 573
第23章 程控电话计费系统 575
23.1 程控电话计费系统 575
23.1.1 主要功能 575
23.1.2 界面预览 575
23.2 主要实现技术 578
23.2.1 使用TMSComm组件 578
23.2.2 共用查询窗体的创建 580
23.2.3 基础窗体的创建 582
23.3 程控电话计费系统的实现 583
23.3.1 主窗体的实现 583
23.3.2 菜单设计 586
23.3.3 系统登录设计 586
23.3.4 分机状态浏览模块的实现 588
23.3.5 电话分机设置模块的实现 589
23.3.6 字典信息管理模块的实现 592
23.3.7 分机信息管理模块的实现 595
23.3.8 工作站模块的实现 596
23.3.9 组策略模块的实现 597
23.3.10 用户权限分配模块的实现 601
23.4 程序调试与发布 603