如何通过消息方式获取单击的菜单项相关信息,比如:CAPTION,NAME等
举例:
mm1: TMainMenu;
menu1: TMenuItem;CAPTION属性值为:注销
menu2: TMenuItem;CAPTION属性值为:退出单击菜单时通过截取消息方式取相应的菜单项的CAPTION?
截获哪种消息?WM_COMMAND或WM_MENUSELECT等等,请高手帮忙

解决方案 »

  1.   

    需要截取消息吗?单击事件能获取的
    MenuItem1Click(Sender: TObject);
    begin
      if Sender is MenuItem then
        MenuItem(Sender).Caption;//菜单项的Caption
    end;
      

  2.   

    MenuItem 更正为 TMenuItem
      

  3.   

    procedure TForm1.WMCommand(var Message: TWMCommand);
    var
      FItemCaption: String; 
    begin
      with Message do
        if (Ctl = 0) and (Menu <> nil) then 
          begin
           if Menu.FindItem(ItemID, fkcommand) <> nil then
            FItemCaption := Menu.FindItem(ItemID, fkcommand).Caption;
          end;
      inherited;
    end;
      

  4.   

    通过GetMenuString取不到菜单项的CAPTION,请高手帮忙!