我正在使用TApplicationEvents OnShortCut事件来获取Delphi程序中的应用程序键盘快捷方式.
使用以下代码:
procedure TForm1.ApplicationEvents1ShortCut(var Msg: TWMKey; var Handled: Boolean) ;
begin
if (Msg.CharCode = VK_F9) then
begin
ShowMessage('F9 pressed!') ;
Handled := True;
end;
end;
Run Code Online (Sandbox Code Playgroud)
题:
如何检测何时按下"ALT C"?
像这样:
procedure TForm1.ApplicationEvents1ShortCut(var Msg: TWMKey;
var Handled: Boolean);
begin
if (Msg.CharCode = Ord('C'))
and (HiWord(Msg.KeyData) and KF_ALTDOWN <> 0)
then begin
ShowMessage('Alt+C pressed!') ;
Handled := TRUE;
end;
end;
Run Code Online (Sandbox Code Playgroud)
请注意,使用Alt和某些键只是快捷方式的错误选择,因为系统使用这些来激活菜单项或对话框控件.