如何屏蔽 Alt+F4 和 Alt+Tab? 先谢了!(30分)

  • 主题发起人 主题发起人 阿曼
  • 开始时间 开始时间
<br>&nbsp; 屏蔽Alt+F4在form.beforeclose中处理,让窗口不关闭...<br><br>&nbsp; 屏蔽Alt+Tab没试过,可不可以在form.onkeypress中处理?
 
Alt+Tab : SystemParamMeterInfo(SPI_SCREENSAVERUNNING,Word(Flag),@temp,0);<br><br>Alt+F4 : 在你主Form的OnCloseQuery中将CanClose设置成false<br>
 
去http://tingweb.heha.net看看<br>会有所收获的
 
wjiachun的方法好,连别的按键也屏蔽了<br><br>呵呵,不过要设定可以取消的控制,否则比较麻烦:)<br>用SystemParametersInfo(SPI_SCREENSAVERRUNNING, 0, @temp, 0);<br><br>不知道除了用ScreenSaver有没有别的方法,Appliction的Action有没有用?
 
也许您希望您的程序在运行时不想让用户按系统按键 Alt-Tab 或  Ctrl-Alt-Del,那么可以通过以下的程序段屏蔽这些按键。  <br>procedure TForm1.FormCreate(Sender: TObject);  <br>begin  <br>var  <br>tmp : integer;<br>  begin<br>  tmp := 0;<br>  //屏蔽 Alt-Tab<br>  SystemParametersInfo( SPI_SETFASTTASKSWITCH, 1, @tmp, 0);<br>  //屏蔽 Ctrl-Alt-Del<br>  SystemParametersInfo( SPI_SCREENSAVERRUNNING, 1, @tmp, 0);   end;  end;<br>
 
agree with OHT
 
如果不想把那些系统功能键全部屏蔽,最好用RegisterHotKey,很好用
 
或者用wm_systemkey消息
 
wjiachun的方法只在98下管用的,到了NT下就完蛋了,呵呵。
 
多人接受答案了。
 
lww:那么在NT下该怎么做呢?
 
后退
顶部