先把的Form的KeyPreview设为TRUE 然后 procedure TSetUnitFrm.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); begin if (Key = VK_F4) and (ssAlt in Shift) then begin MsgBox('Wanna Close ME? NoWay.:)'); Abort; end; end;
procedure TForm1.FormShortCut(var Msg: TWMKey; var Handled: Boolean); begin Handled := (GetKeyState(VK_MENU) < 0) and (Msg.CharCode = VK_F4); end;
end; 就可搞定.
然后
procedure TSetUnitFrm.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if (Key = VK_F4) and (ssAlt in Shift) then
begin
MsgBox('Wanna Close ME? NoWay.:)');
Abort;
end;
end;
begin
Handled := (GetKeyState(VK_MENU) < 0) and (Msg.CharCode = VK_F4);
end;