遍历菜单项

原创 2005年02月25日 17:30:00
//遍历任何窗体的MenuItem
//用了两个多小时
//略做修改,就可以实现其他功能,GetMenuItemInfo提供的信息足够用了

procedure ExplorerMenuItem(MenuHandle: THandle);
var
  MenuIndex: Integer;
  MenuCaptionArray: array[1..255]  of Char;
  MenuCaptionString: String;
  ItemInfo: TMenuItemInfo;
  Buffer: array[0..20] of Char;
begin
  for MenuIndex := 0 to GetMenuItemCount(MenuHandle) - 1 do begin
    //Something todo. Here we get the caption
    GetMenuString(MenuHandle, MenuIndex, @MenuCaptionArray, 255, MF_BYPOSITION);
    MenuCaptionString := MenuCaptionArray;
    SetLength(MenuCaptionString,StrLen(PChar(MenuCaptionString)));
    ShowMessage('Menu Caption: ' + MenuCaptionString);
    //Get caption ends here.
     
    ItemInfo.cbSize := SizeOf(TMenuItemInfo);
    ItemInfo.fMask := MIIM_SUBMENU;
    ItemInfo.dwTypeData := Buffer;
    ItemInfo.cch := SizeOf(Buffer);
    GetMenuItemInfo(MenuHandle, MenuIndex, True, ItemInfo);
    //submenu, calls itself
    if ItemInfo.hSubMenu <> 0 then begin
      ExplorerMenuItem(ItemInfo.hSubMenu);
    end;
  end;
end;

相关文章推荐

word看到菜单项而看不到工具栏

  • 2012年02月29日 10:47
  • 609B
  • 下载

共享菜单项

  • 2015年06月11日 12:49
  • 8KB
  • 下载

VS2010动态添加菜单项

在VC6.0和VS2010里面动态添加菜单项是不一样的,查看MSDN文档可知,VS2010采用的是MFC9.0版,其中有很多新增的项具体信息请查看http://msdn.microsoft.com/e...
  • mjk1133
  • mjk1133
  • 2011年08月12日 10:40
  • 7586

编辑菜单项和修改响应函数

  • 2008年12月13日 17:51
  • 2.95MB
  • 下载

Unity编辑器扩展-菜单项

[TOC] Unity编辑器允许你去添加像内置菜单一样外观和行为的自定义菜单。自定义菜单对于那些经常使用的功能提供一种能从编辑器直接访问的便捷方式。在这一课程中我将对每个描述的主题提供真实的使用示例...

增加菜单项和增加响应函数

  • 2008年12月13日 17:49
  • 5.01MB
  • 下载

微信禁用右上角的分享按钮,WeixinJSBridge API以及隐藏分享的子按钮等菜单项

之前写了一篇关于这个WeixinJSBridge API的文章,文章地址 ,于是有很多网友都在过来咨询这个API的使用,在这里有必要跟大家再说一下:这个API在以前公布的部分接口被官方和谐掉很久 了,...

多余菜单项

  • 2013年08月21日 06:08
  • 26KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:遍历菜单项
举报原因:
原因补充:

(最多只允许输入30个字)