目 录
第1章 关于Delphi与本书................................................................................................................. (1)
1.1 Delphi是什么................................................................................................................................ (1)
1.1.1 Delphi的历史.................................................................................................................... (1)
1.1.2 选择Delphi意味着什么................................................................................................... (2)
1.1.3 如何使用Delphi编程....................................................................................................... (3)
1.2 本书的特点.................................................................................................................................... (4)
1.2.1 本书有哪些内容,没有哪些内容.................................................................................... (5)
1.2.2 本书是如何写作的............................................................................................................ (5)
1.2.3 如何阅读本书.................................................................................................................... (5)
第2章 Object Pascal入门................................................................................................................. (7)
2.1 运算符............................................................................................................................................ (7)
2.1.1 赋值运算符........................................................................................................................ (7)
2.1.2 比较运算符........................................................................................................................ (7)
2.1.3 逻辑运算符........................................................................................................................ (8)
2.1.4 算术运算符........................................................................................................................ (8)
2.1.5 按位运算符........................................................................................................................ (9)
2.1.6 其他运算符和模拟运算.................................................................................................... (9)
2.2 常量和变量.................................................................................................................................. (12)
2.2.1 无类型常量和有类型常量.............................................................................................. (13)
2.2.2 全局变量和局部变量...................................................................................................... (13)
2.2.3 声明时使用编译时函数.................................................................................................. (14)
2.2.4 资源字符串...................................................................................................................... (15)
2.3 过程和函数.................................................................................................................................. (15)
2.3.1 过程和函数的区别.......................................................................................................... (15)
2.3.2 子过程.............................................................................................................................. (16)
2.4 数据类型...................................................................................................................................... (17)
2.4.1 常用类型和复杂类型...................................................................................................... (17)
2.4.2 不同语言的数据类型对照表.......................................................................................... (17)
2.5 程序流程控制.............................................................................................................................. (18)
2.5.1 条件分支.......................................................................................................................... (18)
2.5.2 循环.................................................................................................................................. (19)
2.5.3 跳转.................................................................................................................................. (20)
2.5.4 用过程辅助实现流程控制.............................................................................................. (21)
2.6 单元的组织结构.......................................................................................................................... (24)
2.6.1 Program的组织结构........................................................................................................ (24)
2.6.2 Unit的组织结构.............................................................................................................. (25)
2.6.3 单元循环引用.................................................................................................................. (27)
2.7 with...do语句的用法................................................................................................................... (28)
2.8 IDE的快捷键列表....................................................................................................................... (29)
第3章 Object Pascal精要............................................................................................................... (31)
3.1 数据类型及其相互关系.............................................................................................................. (31)
3.1.1 数据类型概述.................................................................................................................. (32)
3.1.2 变量的内存分配和释放.................................................................................................. (48)
3.1.3 数据的内存结构.............................................................................................................. (52)
3.1.4 强数据类型与类型转化.................................................................................................. (53)
3.2 过程和函数.................................................................................................................................. (59)
3.2.1 作用域.............................................................................................................................. (60)
3.2.2 参数传递.......................................................................................................................... (62)
3.2.3 声明指令.......................................................................................................................... (66)
3.3 类和类成员.................................................................................................................................. (66)
3.3.1 类和类成员概述.............................................................................................................. (67)
3.3.2 深入认识方法.................................................................................................................. (69)
3.3.3 深入认识属性.................................................................................................................. (78)
3.3.4 深入认识事件.................................................................................................................. (84)
3.3.5 类成员重新声明.............................................................................................................. (86)
3.3.6 inherited释疑................................................................................................................... (88)
3.3.7 接口的真相...................................................................................................................... (89)
3.4 编译指令...................................................................................................................................... (95)
3.4.1 开关指令.......................................................................................................................... (96)
3.4.2 参数指令.......................................................................................................................... (99)
3.4.3 条件指令........................................................................................................................ (102)
第4章 VCL入门................................................................................................ (104)
4.1 VCL概述.................................................................................................................................... (104)
4.2 组件与控件的概念.................................................................................................................... (105)
4.3 使用VCL.................................................................................................................................... (105)
4.4 扩展VCL.................................................................................................................................... (107)
第5章 VCL精要................................................................................................................................. (108)
5.1 揭开VCL的神秘面纱............................................................................................................... (108)
5.1.1 VCL架构....................................................................................................................... (108)
5.1.2 构造和析构的内幕........................................................................................................ (111)
5.1.3 虚拟方法表和动态方法表............................................................................................ (115)
5.1.4 TObject如何使用虚拟方法表...................................................................................... (118)
5.1.5 运行时类型信息............................................................................................................ (122)
5.2 VCL的消息机制........................................................................................................................ (130)
5.2.1 VCL消息机制............................................................................................................... (130)
5.2.2 处理消息的八种方法.................................................................................................... (134)
5.2.3 选用什么方法发送消息................................................................................................ (140)
5.2.4 VCL消息大全............................................................................................................... (144)
5.3 多态性........................................................................................................................................ (161)
5.3.1 多态性的概念................................................................................................................ (162)
5.3.2 多态性和虚方法的关系................................................................................................ (164)
第6章 组件开发实战........................................................................................................................ (167)
6.1 三种组件开发方法.................................................................................................................... (167)
6.1.1 继承、聚合和子类化.................................................................................................... (167)
6.1.2 接口、虚方法和辅助类的选择.................................................................................... (169)
6.2 文件拖放监视器........................................................................................................................ (169)
6.2.1 文件拖放原理................................................................................................................ (169)
6.2.2 文件拖放实例................................................................................................................ (170)
6.2.3 组件封装........................................................................................................................ (171)
6.3 托盘组件.................................................................................................................................... (175)
6.3.1 装入托盘图标................................................................................................................ (175)
6.3.2 在应用程序最小化时去掉状态栏的图........................................................................ (177)
6.3.3 给托盘图标增加接收鼠标消息功能............................................................................ (179)
6.3.4 处理鼠标消息................................................................................................................ (181)
6.3.5 显示动画图标................................................................................................................ (182)
6.3.6 设置程序的自动启动功能............................................................................................ (182)
6.3.7 组件封装........................................................................................................................ (183)
6.4 自动下拉的TComboBox........................................................................................................... (190)
6.5 开发数据敏感控件.................................................................................................................... (195)
6.5.1 数据敏感原理................................................................................................................ (196)
6.5.2 开发日期敏感控件........................................................................................................ (196)
6.6 开发聚合组件............................................................................................................................ (203)
6.6.1 开发LabelDBDatePicker............................................................................................... (203)
6.6.2 加强LabelDBDatePicker............................................................................................... (206)
6.7 开发图形图像控件.................................................................................................................... (211)
6.8 开发QuickReport组件............................................................................................................. (218)
第7章 组件开发相关工作............................................................................................................... (225)
7.1 包和包编译指令........................................................................................................................ (225)
7.2 创建组件图标............................................................................................................................ (226)
7.3 属性编辑器................................................................................................................................ (227)
7.4 组件编辑器................................................................................................................................ (231)
第8章 常用函数和过程................................................................................................................... (235)
8.1 数据类型转化类........................................................................................................................ (235)
8.1.1 数值和字符串的相互转化............................................................................................ (235)
8.1.2 整数和字符串的相互转化............................................................................................ (236)
8.1.3 实数和字符串的相互转化............................................................................................ (236)
8.1.4 实数子类型的相互转化................................................................................................ (237)
8.1.5 布尔类型和字符串的相互转化.................................................................................... (237)
8.2 字符串处理类............................................................................................................................ (237)
8.2.1 字符串的分类................................................................................................................ (240)
8.2.2 和字符串相关的类........................................................................................................ (241)
8.3 流处理类.................................................................................................................................... (245)
8.4 内存管理、程序流程控制类.................................................................................................... (250)
8.4.1 内存管理........................................................................................................................ (250)
8.4.2 程序流程控制................................................................................................................ (251)
8.5 文件操作类................................................................................................................................ (252)
8.5.1 使用文件句柄进行I/O处理......................................................................................... (252)
8.5.2 使用Pascal文件变量进行I/O处理............................................................................. (253)
8.5.3 面向对象文件I/O处理................................................................................................. (255)
8.5.4 文件属性操作................................................................................................................ (255)
8.5.5 其他函数和方法............................................................................................................ (256)
8.6 日期时间类................................................................................................................................ (258)
8.6.1 获取/合成日期/时间...................................................................................................... (258)
8.6.2 日期/时间和字符串的转换........................................................................................... (259)
8.6.3 日期/时间的运算........................................................................................................... (259)
8.7 VCL类........................................................................................................................................ (260)
8.7.1 Classes单元................................................................................................................... (260)
8.7.2 Controls单元................................................................................................................. (262)
8.7.3 Dialogs单元................................................................................................................... (262)
8.8 位运算类.................................................................................................................................... (264)
8.9 图形图像类................................................................................................................................ (266)
第9章 高级开发技巧........................................................................................................................ (268)
9.1 自定义窗口过程........................................................................................................................ (268)
9.2 自定义消息及其替代方法........................................................................................................ (270)
9.3 自定义系统惟一消息................................................................................................................ (272)
9.4 新颖的类工厂............................................................................................................................ (275)
9.5 使用对象库................................................................................................................................ (281)
9.6 非发布(published)数据的持久化......................................................................................... (287)
9.7 使用回调函数............................................................................................................................ (288)
9.8 使用递归算法............................................................................................................................ (290)
9.9 编写NT服务程序..................................................................................................................... (294)
9.10 编写只能惟一运行的程序...................................................................................................... (295)
9.11 字段类型全家福...................................................................................................................... (298)
9.12 获取数据库结构信息.............................................................................................................. (300)
9.13 深入使用TCanvas................................................................................................................... (301)
9.14 指针列表类的使用.................................................................................................................. (308)
9.15 结构化存储技术...................................................................................................................... (312)
9.16 挂钩技术.................................................................................................................................. (321)
9.17 TRichEdit高级开发................................................................................................................. (327)
9.18 用TTreeView分析数据表的结构.......................................................................................... (334)
9.19 SQL语句分析器...................................................................................................................... (339)
9.20 剪贴板高级编程...................................................................................................................... (344)
第10章 综合例子——使用Socket传输多个文件............................................................... (350)
10.1 Socket简介............................................................................................................................... (350)
10.2 TServerSocket和TClientSocket.............................................................................................. (351)
10.3 设计通讯协议.......................................................................................................................... (354)
10.4 实现服务端.............................................................................................................................. (357)
10.5 实现客户端.............................................................................................................................. (367)
10.6 组件封装.................................................................................................................................. (374)
10.7 自动下载技术在项目中的应用.............................................................................................. (391)