zoukankan      html  css  js  c++  java
  • 遍历菜单

    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;

  • 相关阅读:
    4-10
    4-9
    第三章例3-4
    第三章例3-3
    第三章例3-2
    第三章例3-1
    第二章例2-11
    第二章例2-10
    第二章例2-9
    第二章例2-8
  • 原文地址:https://www.cnblogs.com/chengxin1982/p/1588633.html
Copyright © 2011-2022 走看看