既然需要那样,你为什么要用菜单呢?还不如用form+button呢。

解决方案 »

  1.   

    有这个必要吗?不过你既然很需要,那就给你一段代码吧。
    菜单如下文件(F)
    AAA
    BBB->CCC
         DDD以下过程可进入DDD一项
    procedure TForm1.Button1Click(Sender: TObject);
    begin
      if MessageBox(Handle, 'a', 'a', MB_YESNO) = IDYES then
      begin
        keybd_event(VK_MENU, 0, 0, 0);
        keybd_event(VK_MENU, 0, KEYEVENTF_KEYUP, 0);
        keybd_event(VK_DOWN, 0, 0, 0);
        keybd_event(VK_DOWN, 0, KEYEVENTF_KEYUP, 0);
        keybd_event(VK_DOWN, 0, 0, 0);
        keybd_event(VK_DOWN, 0, KEYEVENTF_KEYUP, 0);
        keybd_event(VK_RIGHT, 0, 0, 0);
        keybd_event(VK_RIGHT, 0, KEYEVENTF_KEYUP, 0);
        keybd_event(VK_DOWN, 0, 0, 0);
        keybd_event(VK_DOWN, 0, KEYEVENTF_KEYUP, 0);
      end;
    end;
      

  2.   

    有这个必要吗?不过你既然很需要,那就给你一段代码吧。
    菜单如下文件(F)
    AAA
    BBB->CCC
         DDD以下过程可进入DDD一项
    procedure TForm1.Button1Click(Sender: TObject);
    begin
      if MessageBox(Handle, 'a', 'a', MB_YESNO) = IDYES then
      begin
        keybd_event(VK_MENU, 0, 0, 0);
        keybd_event(VK_MENU, 0, KEYEVENTF_KEYUP, 0);
        keybd_event(VK_DOWN, 0, 0, 0);
        keybd_event(VK_DOWN, 0, KEYEVENTF_KEYUP, 0);
        keybd_event(VK_DOWN, 0, 0, 0);
        keybd_event(VK_DOWN, 0, KEYEVENTF_KEYUP, 0);
        keybd_event(VK_RIGHT, 0, 0, 0);
        keybd_event(VK_RIGHT, 0, KEYEVENTF_KEYUP, 0);
        keybd_event(VK_DOWN, 0, 0, 0);
        keybd_event(VK_DOWN, 0, KEYEVENTF_KEYUP, 0);
      end;
    end;
      

  3.   

    to : prometheusphinx(白日梦) 
    如果 新建的form 是 create(self)的 你那段代码如何改呀