前言
导读
第一部分   C++Builder编程基础
第1章   使用C++ Builder进行软件开发	
1.1   软件开发概况	
1.1.1   计算模式的发展概况	
1.1.2   程序设计方法的发展概况	
1.1.3   软件开发与软件开发人员	
1.2   集成开发环境简介	
1.3   例程：第一个Windows应用程序	
1.4   集成调试器	
1.5   开发环境的优化	
1.5.1   自定义工具栏	
1.5.2   编程环境设置	
1.5.3   编辑环境设置	
1.5.4   工程设置	
1.6   方法与技巧	
1.6.1   使用代码浏览器	
1.6.2  使用代码编辑器	
1.6.3   使用帮助系统	
1.6.4   设置IDE桌面	
第2章   C++语言的关键技术	
2.1   普通注释与特殊格式的注释	
2.2   const与volatile的用法	
2.2.1   const	
2.2.2   volatile	
2.3   sizeof与#pragma pack的用法	
2.4   引用	
2.4.1   引用变量	
2.4.2   引用参数传递	
2.5   名空间	
2.5.1   namespace	
2.5.2   using	
2.6   new与delete运算符	
2.7   void指针	
2.8   typeid运算符	
2.9   函数	
2.9.1   内联函数	
2.9.2   指定函数形参的默认值	
2.9.3   参数个数不定的函数	
2.9.4   模板函数	
2.9.5   重载函数	
2.9.6   指向函数的指针	
2.10   类与对象	
2.10.1   类的封装	
2.10.2   类的派生与继承	
2.10.3   构造函数和析构函数	
2.10.4   对象的引用参数传递	
2.10.5   静态成员变量与静态成员
             函数	
2.10.6   const类型成员函数与
             mutable	
2.10.7   对象的初始化与初始化行	
2.10.8   拷贝构造函数	
2.10.9   模板类	
2.11   友元函数与友元类	
2.12   运算符重载	
2.13   派生和继承	
2.13.1   派生与继承	
2.13.2   多重、多层派生与继承	
2.13.3   虚基类	
2.14   多态性和虚函数	
2.15   集合	
2.15.1   集合的基本概念	
2.15.2   集合的操作	
2.16   异常处理	
2.16.1   C++的异常处理	
2.16.2   BCB中的异常类	
第二部分   C++Builder编程通用技术
第3章   窗体和组件	
3.1   窗体和组件	
3.1.1   窗体	
3.1.2   组件	
3.1.3   在窗体中使用组件	
3.2   文本组件	
3.3   特殊输入组件	
3.4   按钮及其分类组件	
3.5   列表组件	
3.6   分组组件	
3.7   信息反馈组件	
3.8   表格显示组件	
3.9   图形显示组件	
3.10   开发MDI应用程序	
3.11   例程：常用组件的用法	
3.11.1   例程S03B	
3.11.2   例程S03C	
3.11.3   例程S03D	
3.11.4   例程S03E	
3.12   方法与技巧	
3.12.1   窗体、组件的使用原则	
3.12.2   使用信息对话框	
3.12.3   使用组件的Hint属性	
3.12.4   使用Edit组件的IME属性	
3.12.5   将系统字体添加到ComboBox
            组件中	
3.12.6   在RichEdit组件中存取文件	
3.12.7   设置模态对话框的返回值	
3.12.8   使用事件处理过程中的Sender
            参数	
3.12.9   为控件生成多行提示信息	
3.12.10   生成非矩形窗口	
3.12.11   移动无标题栏窗口	
3.12.12   制作动态字幕	
3.12.13   在窗体上动态地设置背景画面	
3.12.14   Owner和Parent的区别	
第4章   菜单、工具栏和状态栏	
4.1   菜单	
4.1.1   主菜单	
4.1.2   鼠标右键弹出式菜单	
4.1.3   使用菜单模板	
4.2   工具栏	
4.2.1   ToolBar	
4.2.2   CoolBar	
4.2.3   ControlBar	
4.3   状态栏	
4.4   例程S04A	
4.5   方法与技巧	
4.5.1   动态管理菜单	
4.5.2   定制系统菜单	
4.5.3   制作图形菜单项	
4.5.4   在状态栏中添加进度条等其他
           组件	
4.5.5   MDI应用程序中的菜单融合	
4.5.6   制作可四处拖放的工具栏	
4.5.7   将菜单项移到菜单栏的最右边	
4.5.8   运行时控件的移动	
第5章   键盘和鼠标	
5.1   键盘事件	
5.2   鼠标事件	
5.2.1   常用鼠标事件	
5.2.2   拖曳事件	
5.3   例程S05A	
5.4   方法与技巧	
5.4.1   检测Shift、Alt和Ctrl键是否按下	
5.4.2   屏蔽系统功能键	
5.4.3   模拟按下键盘上的某个键	
5.4.4   限制鼠标移动的范围	
5.4.5   自定义鼠标	
5.4.6   设置光标闪烁的速度	
5.4.7   不同程序间的拖曳操作	
第6章   文件、目录和驱动器	
6.1   文件	
6.1.1   C标准文件类型	
6.1.2   C++流式文件类	
6.1.3   非缓冲文件	
6.2   文件对话框组件	
6.3   Win3.1相关组件	
6.4   常用文件管理函数	
6.4.1   文件操作常用函数	
6.4.2   目录操作常用函数	
6.4.3   驱动器操作常用函数	
6.4.4   文件名操作常用函数	
6.5   例程S06A	
6.6   例程S06B	
6.7   例程S06C	
6.8   例程S06D	
6.9   方法与技巧	
6.9.1   获取驱动器类型信息	
6.9.2   操作INI文件	
6.9.3   获取文件的日期信息	
6.9.4   检测软盘或光盘是否有过变化	
6.9.5   检测驱动器容量	
6.9.6   拷贝整个目录	
6.9.7   将文件删除到回收站中	
6.9.8   检测驱动器是否就绪	
6.9.9   获取应用程序的文件名	
6.9.10   操作临时文件	
第7章   打印	
7.1   一些简单的打印输出	
7.2   TPrinter对象和TScreen对象	
7.3   TPrintDialog、TPrinterSetupDialog
         组件	
7.4   打印操作常用API函数	
7.5   例程S07A	
7.6   例程S07B	
7.7   方法与技巧	
7.7.1   获取默认打印机的信息	
7.7.2   获取打印机队列的状态信息	
7.7.3   打印窗体	
第三部分   C++Builder高级编程技术
第8章   数据共享	
8.1   使用剪贴板	
8.1.1   组件对剪贴板操作的支持	
8.1.2   使用剪贴板类	
8.1.3   操作图形	
8.1.4   操作组件	
8.1.5   操作定制格式的数据	
8.2   动态数据交换(DDE)	
8.2.1   例程S08F	
8.2.2   操作程序管理器	
8.3   内存映射文件	
8.3.1   Windows 95/NT内存管理	
8.3.2   内存映射文件	
8.3.3   映射文件的共享方式	
第9章   操作注册表	
9.1   TRegistry类	
9.2   例程S09A	
9.3   与注册表相关的API函数	
9.4   TRegIniFile组件	
第10章   帮助系统的制作	
10.1   RTF文件	
10.2   HPJ文件与HLP文件	
10.3   启动帮助	
第11章   安装与卸载	
第12章   多线程应用程序	
12.1   进程与线程	
12.2   TThread类	
12.3   线程的同步	
12.4   线程的优先级	
12.5   例程S12A	
第13章   动态链接库	
13.1   DLL基本理论	
13.1.1   导入与导出匹配	
13.1.2   隐式链接和显式链接	
13.1.3   符号链接和序号链接	
13.1.4   客户程序如何查找DLL	
13.2   创建动态链接库	
13.3   使用动态链接库	
13.4   DLL中包含VCL组件	
13.5   方法与技巧	
13.5.1   如何调试动态链接库	
13.5.2   在DLL中使用MessageBox
             代替ShowMessage	
13.5.3   如何动态地装入DLL	
13.5.4   如何定制不同语言版本的应用
             程序	
第14章   图形与多媒体	
14.1   图形与图像	
14.1.1   图形对象	
14.1.2   图形类	
14.1.3   图形对象、类和组件之间的关系	
14.1.4   画布类	
14.1.5   橡皮条例程（S14A）	
14.2   多媒体	
14.2.1   概述	
14.2.2   多媒体应用领域	
14.2.3   多媒体软件开发工具	
14.3   图像格式的处理	
14.3.1   位图	
14.3.2   JPEG文件	
14.4   特殊显示效果	
14.5   动画	
14.5.1   文字动画	
14.5.2   图像动画	
14.6   音频、视频	
14.7   方法与技巧	
14.7.1   使用MessageBeep与Beep	
14.7.2   使用PlaySound	
14.7.3   使用mciSendString	
第四部分   数据库编程
第15章   关系数据库	
15.1   数据库技术的发展	
15.1.1   数据管理的发展	
15.1.2   数据库技术的发展	
15.2   关系数据库基础	
15.2.1   表	
15.2.2   字段	
15.2.3   数据类型	
15.2.4   记录	
15.2.5   关键字与索引	
15.2.6   完整性	
15.2.7   Paradox数据库的关键字、索引
            和引用完整性规则	
15.2.8   存储过程	
15.2.9   触发器	
15.2.10   结构化查询语言(SQL)	
15.3   数据库设计	
15.3.1   数据库规范化	
15.3.2   设计工具	
15.4   C++ Builder提供的数据库辅助工具	
15.4.1   SQL Explorer	
15.4.2   Database Desktop	
15.4.3   BDE Administrator	
第16章   数据库组件	
16.1   设计数据库应用程序	
16.1.1   使用数据库	
16.1.2   数据库应用程序结构	
16.1.3   设计用户界面	
16.2   常用数据库组件	
16.2.1   例程S16A	
16.2.2   数据访问组件	
16.2.3   数据控制组件	
16.2.4   表的连接	
16.2.5   计算字段	
16.2.6   查找字段	
16.2.7   DBGrid组件	
16.3   查询记录	
16.3.1   使用GotoKey	
16.3.2   使用FindKey	
16.3.3   使用模糊查询	
16.3.4   使用Locate	
16.4   修改记录	
16.5   插入和删除记录	
16.6   数据模块	
16.7   数据字典查看器	
16.8   事务	
16.9   处理数据库异常	
16.10   报表组件	
16.10.1   QuickRep组件	
16.10.2   Band组件	
16.10.3   创建一个简单的报表（例程
S16P）	
16.10.4   QuickReport向导	
第17章   InterBase服务器	
17.1   设置InterBase	
17.1.1   设置本地InterBase	
17.1.2   设置InterBase别名	
17.2   客户/服务器的概念	
17.2.1   客户	
17.2.2   InterBase 客户例程库	
17.2.3   InterBase服务器	
17.2.4   Borland数据库引擎	
17.3   数据库的管理和维护	
17.3.1   创建数据库	
17.3.2   创建表	
17.3.3   数据库安全	
17.3.4   备份与恢复	
17.4   服务器端程序	
17.4.1   存储过程	
17.4.2   触发器	
17.5   本地缓存	
第18章   OLE DB/ADO	
18.1   数据库客户技术概述	
18.1.1   ODBC	
18.1.2   DAO	
18.2   OLE DB/ADO原理	
18.3   ADO组件	
18.3.1   连接到一个ADO数据存储	
18.3.2   使用ADO数据集组件	
18.3.3   使用ADO命令组件	
18.3.4   例程S18A	
第19章   Web与数据库	
19.1   数据库与Internet	
19.1.1   Web浏览器与Web服务器	
19.1.2   Web文档	
19.1.3   统一资源定位符URL	
19.1.4   CGI概况	
19.1.5   ISAPI/NSAPI概况	
19.2   CGI编程	
19.2.1   普通CGI编程	
19.2.2   CGI数据库编程	
19.2.3   普通ISAPI编程	
19.3   C++Builder对CGI与ISAPI/NSAPI的
         支持	
19.3.1   TWebModule	
19.3.2   TWebResponse	
19.3.3   TWebRequest	
19.4   创建Web应用程序	
19.4.1   CGI类型服务器程序	
19.4.2   ISAPI/NSAPI类型服务器程序	
19.4.3   表单	
19.4.4   把信息保存到数据库	
19.5   HTML生成器组件	
19.5.1   PageProducer组件	
19.5.2   QueryTableProducer组件	
19.5.3   TDataSetTableProducer组件	
19.5.4   DataSetPageProducer组件	
第五部分   组件对象模型（COM）
第20章   COM	
20.1   组件对象模型（COM）基础理论	
20.1.1   传统DLL技术的局限性	
20.1.2   COM的特点	
20.1.3   C++抽象基类	
20.1.4   自定义模拟接口	
20.1.5   COM接口	
20.1.6   基本的COM接口IUnknown	
20.1.7   版本化问题	
20.1.8   COM接口指针	
20.1.9   语言无关特性	
20.1.10   COM服务器	
20.1.11   COM客户	
20.2   创建COM应用程序	
20.2.1   使用类型库	
20.2.2   类型库编辑器	
20.2.3   创建COM服务器程序	
20.2.4   创建COM客户程序	
20.3   COM扩展	
20.4   使用向导实现COM对象	
第21章   OLE自动化	
21.1   Variant类型	
21.2   自动化接口	
21.2.1   双向接口	
21.2.2   派发接口	
21.2.3   自定义接口	
21.3   创建OLE自动化服务器	
21.4   创建OLE客户程序	
21.4.1   自动化对象的包装器	
21.4.2   访问自动化服务器的方法	
21.5   完成Word和Excel自动化	
21.5.1   配置C++ Builder	
21.5.2   启动Word和Excel	
21.5.3   Word和Excel自动化对象	
21.6   复合文档	
21.6.1   为没有类型库的服务器创建
             客户应用程序	
21.6.2   复合文档	
第六部分   分布式程序设计
第22章   DCOM和MIDAS	
22.1   分布式应用程序	
22.1.1   分布式结构	
22.1.2   分布式结构使用的技术	
22.1.3   C++ Builder 能开发的分布式结构	
22.2   DCOM	
22.3   MIDAS	
22.3.1   MIDAS基础多层应用程序概述	
22.3.2   客户应用程序的结构	
22.3.3   应用程序服务器的结构	
22.3.4   选择连接协议	
22.4   开发多层应用程序	
22.4.1   创建应用程序服务器	
22.4.2   创建客户应用程序	
22.4.3   更新数据	
22.4.4   查询数据	
22.4.5   参数传递	
22.4.6   主从约束	
22.4.7   离线处理	
22.5   DCOM和多层应用系统的配置	
22.5.1   客户端应用程序的分发	
22.5.2   服务器端应用程序的分发	
第23章   ActiveForm	
23.1   ActiveX控件	
23.2   ActiveForm概述	
23.2.1   如何创建ActiveForm组件	
23.2.2   注册ActiveX控件	
23.2.3   在网络上配置ActiveX控件	
23.2.4   开发在IE中使用的ActiveForm	
23.3   浏览器中的数据库ActiveForm	
23.4   技巧：将Delphi的应用程序
          转换成ActiveForm	
第24章   CORBA与分布式应用程序	
24.1   CORBA结构	
24.1.1   CORBA应用程序概要	
24.1.2   存根和构架	
24.1.3   使用Smart Agent	
24.1.4   激活服务程序	
24.1.5   VisiBroker CORBA系统的运行
             流程	
24.1.6   动态绑定接口调用	
24.2   编写CORBA应用程序	
24.2.1   编写CORBA应用程序服务器	
24.2.2   定义对象的接口	
24.2.3   使用CORBA服务器向导	
24.2.4   从IDL文件生成存根和构架	
24.2.5   使用CORBA对象的实现向导	
24.2.6   创建CORBA对象的实例	
24.2.7   使用委托模式	
24.2.8   浏览和编辑	
24.3   编写CORBA客户程序	
24.3.1   使用存根	
24.3.2   使用动态调用接口	
24.4   编写CORBA数据库应用系统	
24.4.1   创建CORBA对象服务器	
24.4.2   防止线程的冲突	
24.4.3   创建客户应用程序	
24.5   VisiBroker简介	
24.5.1   OSAgent	
24.5.2   OSFind	
24.5.3   OAD和IREP	
第25章   其他编程方法与技巧	
25.1   获取Windows版本信息	
25.2   获取系统的度量信息和相关配置信息	
25.3   获取CPU信息	
25.4   获取内存信息	
25.5   存取系统的颜色信息	
25.6   获取Windows及系统路径	
25.7   存取计算机名称	
25.8   获取用户注册信息	
25.9   关闭Windows	
25.10   启动控制面板	
25.11   启动屏幕保护	
25.12   使窗体标题栏闪烁	
25.13   使窗口背景颜色渐变	
25.14   隐藏/显示桌面上的图标	
25.15   获取窗口标题栏中的文字	
25.16   制作软件封面	
25.17   隐藏/显示Windows任务栏	
25.18   使应用程序不出现在
            Windows的任务栏上	
25.19   状态栏编程	
25.20   存取系统参数信息	
25.21   Windows启动时运行程序	
25.22   为程序在启动菜单中创建快捷方式	
25.23   在程序中运行其他程序	
25.24   同时只运行程序的一个实例	
25.25   关闭运行的其他应用程序	
25.26   显示旋转字体	

