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的主菜单,及我们新创建的菜单项。
FMainMenu:TMainMenu;
FNewMenuItem:TMenuItem;
FNewMenuItem:TMenuItem;
接下来要做的就是在构造函数中获得Delphi IDE主菜单对象的实例,创建新菜单项并插入。
//FindDelphi'smainmenu
FMainMenu:=(BorlandIDEServicesasINTAServices).MainMenu;
//Createnewmenuitem
FNewItem:=TMenuItem.Create(Nil);
FNewItem.Caption:='Add-inMenu';
FNewItem.OnClick:=MenuItemClick;
//Insertnewmenuitem
FMainMenu.Items.Insert(FMainMenu.Items.Count-1,FNewItem);
FMainMenu:=(BorlandIDEServicesasINTAServices).MainMenu;
//Createnewmenuitem
FNewItem:=TMenuItem.Create(Nil);
FNewItem.Caption:='Add-inMenu';
FNewItem.OnClick:=MenuItemClick;
//Insertnewmenuitem
FMainMenu.Items.Insert(FMainMenu.Items.Count-1,FNewItem);
最后要在析构函数中释放掉我们插入的菜单项。
FMainMenu.Items.Remove(FNewItem);
FNewItem.Free;
FNewItem.Free;
版权声明:本文为博主原创文章,未经博主允许不得转载。
上一篇: 汇编语言 实验9 王爽 分析