我要做一个离开挂起的窗体,我想把其中Alt+F4 给屏蔽掉!请问我该如何做,代码怎么去些,谢谢!!在线等~~~~~~~~~

解决方案 »

  1.   

    设一个全局变量a=false;
    在窗体的CloseQuery事件里
    canclose:=a;想让窗体允许用Alt+F4 把a=ture 就ok了
      

  2.   

    procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
    var
      akey:Integer;
      iRtn:Shortint;
    begin
      aKey := VK_MENU;
      iRtn := GetKeyState(akey);
      if (iRtn And $80) <> 0 then
      begin
        aKey := VK_F4;
        iRtn := GetKeyState(akey);
        if (iRtn And $80) <> 0 then
          CanClose:=False;
      end;
    end;
    这样可以屏蔽Alt+F4,同时允许点击关闭按钮。
      

  3.   

    to:delphi_wo(Cser)
       你屏蔽掉了close事件,并没有屏蔽掉ALT+F4键
      

  4.   

    我是路过的,请教一个问题:  if (iRtn And $80) <> 0 then
    这句话是什么意思?$80代表什么?
      

  5.   

    ALT+F4就是触发程序的CLOSE事件,CLOSE不起作用,自然就等于屏蔽了ALT+F4,呵呵.
      

  6.   

    如果只需要在程序内屏蔽,那么是用Action就可以了,给它分配Alt+F4就可以了,但这只对本程序为活动窗口时候有效,如果是对整个操作系统有效,那么你需要注册一个消息吧???