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

Delphi Open Tools API - How to create and add new menu item

程序员文章站 2022-06-07 09:03:27
...

之前提介绍过如何编写一个菜单专家(Menu Wizard),但它有一个不足之处--就是我们所编写的菜单项只能作为Delphi IDE环境中的“Help”菜单的子项出现。如果我们想在Delphi IDE主菜单中任一位置插入我们自己的菜单项又应该如何做呢?

其实办法很简单,只需要编写一个插件专家(Add-in Wizard),在其构造函数中将菜单插入到Delphi IDE主菜单中,并在其析构函数中析构掉新插入的菜单项。

首先我们要在专家类中定义一些私有成员,用于保存Delphi IDE的主菜单,及我们新创建的菜单项。

Delphi Open Tools API - How to create and add new menu item
            
    
    博客分类: Delphi delphi FMainMenu:TMainMenu;
Delphi Open Tools API - How to create and add new menu item
            
    
    博客分类: Delphi delphi FNewMenuItem:TMenuItem;

接下来要做的就是在构造函数中获得Delphi IDE主菜单对象的实例,创建新菜单项并插入。

Delphi Open Tools API - How to create and add new menu item
            
    
    博客分类: Delphi delphi //FindDelphi'smainmenu
Delphi Open Tools API - How to create and add new menu item
            
    
    博客分类: Delphi delphi 
FMainMenu:=(BorlandIDEServicesasINTAServices).MainMenu;
Delphi Open Tools API - How to create and add new menu item
            
    
    博客分类: Delphi delphi 
Delphi Open Tools API - How to create and add new menu item
            
    
    博客分类: Delphi delphi 
//Createnewmenuitem
Delphi Open Tools API - How to create and add new menu item
            
    
    博客分类: Delphi delphi 
FNewItem:=TMenuItem.Create(Nil);
Delphi Open Tools API - How to create and add new menu item
            
    
    博客分类: Delphi delphi FNewItem.Caption:
='Add-inMenu';
Delphi Open Tools API - How to create and add new menu item
            
    
    博客分类: Delphi delphi FNewItem.OnClick:
=MenuItemClick;
Delphi Open Tools API - How to create and add new menu item
            
    
    博客分类: Delphi delphi 
Delphi Open Tools API - How to create and add new menu item
            
    
    博客分类: Delphi delphi 
//Insertnewmenuitem
Delphi Open Tools API - How to create and add new menu item
            
    
    博客分类: Delphi delphi 
FMainMenu.Items.Insert(FMainMenu.Items.Count-1,FNewItem);

最后要在析构函数中释放掉我们插入的菜单项。

 

Delphi Open Tools API - How to create and add new menu item
            
    
    博客分类: Delphi delphi FMainMenu.Items.Remove(FNewItem);
FNewItem.Free;

 

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

相关标签: delphi