欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Delphi Open Tools API概述

程序员文章站 2022-06-07 08:57:51
...

Delphi为我们提供了一组AIP(Open Tools API),允许我们使用这些函数,将自定义的菜单项、工具栏按钮、创建窗体专家以及更多的东西加入到IDE中,以提高自己的开发效率。

使用Tools API是一件很容易的事,只要实现一些特定的接口,并调用另一些接口提供的服务即可。编写一个Tools API代码和编写组件或是属性编辑器很类似,必须将这些代码编译为设计期包或是DLL加载到Delphi的IDE中。

所有的API函数都声明在ToolsAPI单元中,其位置在Delphi的安装目录下Source/ToolsAPI目录中,大家可以看到这个单元中的接口都是以OTA或是NTA作为前缀名称的(关于这两个前缀的含义在单元的头部也给出了简单的说明:OTA -- Open Tools API;NTA -- Native Tools API),从这里我们可以看出,Delphi将API划分为两类,OTA只能通过接口访问IDE,不受IDE版本的限制;NTA允许访问实际的IDE对象,如IDE中的TActionList、TMainMenu等。使用这些接口时必须引用Borland包,这意味着实现这些接口的代码将限制于特定的IDE版本。

有些接口后面会有一些数字,如IOTAServices50,这表示这个接口是在5.0的IDE中使用的,为了向前兼容,Borland没有直接修改此接口,而是在此接口的基础之上再派生出新版本的接口。

在Open Tools API中最重要的一个接口就是IBorlandIDEServices接口了,他代替了老版本中的具有许多许多方法的单一模式对象ToolServices。他实现了许多不同的COM接口,通过他我们就可以得到我们所需要的Services接口(后缀以Services结尾的接口都可以由IBorlandIDEServices接口转型得到)。

Delphi Open Tools API概述
            
    
    博客分类: Delphi  var
Delphi Open Tools API概述
            
    
    博客分类: Delphi  ModuleServices:IOTAModuleServices;
Delphi Open Tools API概述
            
    
    博客分类: Delphi  
Delphi Open Tools API概述
            
    
    博客分类: Delphi  ...
Delphi Open Tools API概述
            
    
    博客分类: Delphi  
Delphi Open Tools API概述
            
    
    博客分类: Delphi  
ifSupports(BorlandIDEServices,IOTAModuleServices,ModuleServices)then
Delphi Open Tools API概述
            
    
    博客分类: Delphi  begin
Delphi Open Tools API概述
            
    
    博客分类: Delphi  ...
Delphi Open Tools API概述
            
    
    博客分类: Delphi  end;

 

接口名称

描述

IOTAActionServices 利用此接口执行一些文件动作,如打开、关闭和保存等
IOTAModuleServices 利用此接口可以注册通知器(Notifier),创建新文件,还可以通过它访问Editor Interfaces,Project Options等等
IOTADebuggerServices Delphi调试器接口,这个接口没有完全实实,其中的GetCurrentProcess方法始终返回Nil值。
IOTAWizardServices 注册和反注册Wizard。编写为DLL的Wizard必须使用Wizard Services注册
IOTAPackageServices 通过此接口可以获得已安装的包及其组件的列表
IOTAMessageServices

可以利用此接口将信息显示到Delphi IDE中的“消息查看”窗口中

IOTAToDoServices 通过他可以获得Delphi中的TO DO List信息
IOTAServices 这个接口不像其他接口可以“见名知意”,它可以注册IDE通知器,也可以获限环境选项接口
INTAServices 使用这个接口必须使用VCL50.BPL包,它可以直接访问IDE中实际的对象,如菜单对象, 动作列表(Action Lists), 工具栏等

通过学习和使用Open Tools API,你会领略到Delphi IDE的完美设计。

访问http://delphi.about.com/library/weekly/aa033099.htm可以获取更多关于Open Tools API的知识。

版权声明:本文为博主原创文章,未经博主允许不得转载。