请教:如何屏蔽Alt-F4键?(100分)

  • 主题发起人 主题发起人 base1
  • 开始时间 开始时间
B

base1

Unregistered / Unconfirmed
GUEST, unregistred user!
r.t.<br>望指点!
 
使用了窗体的OnKeyDown事件来检测击键:<br>procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;Shift: TShiftState);<br>begin<br>if (ssAlt in shift)and(key=115) then key:=0;<br>end;
 
我也是这样写的,但好像没屏蔽掉?<br>一按窗体就被关了:(
 
那就在你主Form的OnCloseQuery中将CanClose设置成false
 
能说的具体一点吗?<br>
 
如果在你主Form的OnCloseQuery中将CanClose设置成false的话, 就没有人能<br>够关掉你的程序了, Ctrl+Alt+Del也不行, 除非关掉你的机器.<br><br>可以新建一个口令对话框(用File|New|Dialog), 在OnCloseQuery的时候检查<br>口令:<br>procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);<br>begin<br>&nbsp; if PasswordDlg.ShowModal=mrOK then<br>&nbsp; &nbsp; if PasswordDlg.Password.text = '12345' then<br>&nbsp; &nbsp; &nbsp; CanClose:=true<br>&nbsp; &nbsp; else CanClose:=false;<br>end;
 
一个大bug,不知道大家有没有注意:当启动输入密码的窗体的瞬间,用Alt+F4关闭窗体,也可以<br>进入主程序。
 
后退
顶部