Я хочу иметь комбинацию сочетания клавиш (как Ctrl+Alt+D) в моем приложении для вызова функции, но я не хочу, чтобы ярлык появился в любом меню. Действительно ли возможно иметь ярлык в наличии в Вашем приложении, которое в других отношениях невидимо?
вы можете использовать событие OnShortCut
компонента TApplicationEvents
для этой задачи
проверить этот код
procedure TForm1.ApplicationEvents1ShortCut(var Msg: TWMKey;
var Handled: Boolean);
begin
if (Msg.CharCode = Ord('D')) and (HiWord(Msg.KeyData) and KF_ALTDOWN <> 0) and (GetKeyState(VK_CONTROL) < 0) then
begin
ShowMessage('Ctrl+Alt+D Pressed') ;
Handled := true;
end;
end;
Да, это возможно. Вы должны добавить в свою форму объект класса TAction. Вы можете указать сочетание клавиш для Taction, а затем поместить свой код в событие OnExecute TAction.
Обратите внимание, что вы не можете добавить Taction непосредственно в свою форму, вы должны поместить TactionList в свою форму, а затем вы можете добавить Taction в свой TActionList.