附录A使用OPENTOOLSAPI的Delphi扩展示例附录A与第11章的内容前后承继
阅读第11章之后,您已经了解了创建定制组件的大部分知识
附录A也很重要,它示范了如何创建组件编辑器以及使用OpenToolsAPI对Delphi自身进行扩展
二者分属不同的主题:一个与组件相关,另一个则是要扩展Delphi
之所以将二者放到附录中,是因为它们没有其他技术那样常用
但要用到二者的时候,它们都是很有用的
定制组件编辑器可以定义设计时对话框,编辑器在ObjectInspector不够用时,使得用户能够可视化地修改特定于该组件的每个方面
一个很好的例子就是TChart组件,由DaveBerneda开发
另外,在设计时您还可以从组件的上下文菜单中运行该组件所包含的代码
假定您使用Delphi已经有一段时间了,而您认为Delphi缺乏某些必要的特征
我三年前在一个工程上工作时,就发生了这样的情况
当时正在对RationalRose所定义的系统结构模型进行编码,我们已经厌烦了手工定义类并编写函数体
实在是太烦了
创建一个类来读取类的声明并编写函数体,这看来是个不错的主意
使用OpenToolsAPI,有时候再借助一下RayLischner的书《HiddenPathsofDelphi3:Experts,Wizards,andtheOpenToolsAPI》,我们最终向Delphi添加了一个能够调用类生成器的菜单项
结果终于摆脱了这本来可以自动完成的、烦人的任务(可惜的是我们没有一本语法分析方面的好书,我有点离题了)
这准确地描述了Inprise公司在决定向Delphi专业版和企业版用户提供OpenToolsAPI时的想法
当需要Delphi具有某些功能时,添加上去就行了
Delphi现在还具有“Completeclassatcursor”的代码生成功能,因此我们可以创建一个尚不存在的专家