Tutorial :Delphi - Using the TApplicationEvents OnShortCut event to detect Alt+C key presses



Question:

I am using TApplicationEvents OnShortCut event to get application keyboard short cuts in a Delphi program.

Using the following code:

procedure TForm1.ApplicationEvents1ShortCut(var Msg: TWMKey; var Handled: Boolean) ;  begin     if (Msg.CharCode = VK_F9) then     begin       ShowMessage('F9 pressed!') ;       Handled := True;     end;  end;  

Question:

How do I detect when 'ALT C' has been pressed ?


Solution:1

Like so:

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;  

Please note that using Alt and some key only is a bad choice for a shortcut, as the system uses these to activate menu items or dialog controls.


Solution:2

Or you can create simple TAction, they eats shortcuts before others.


Note:If u also have question or solution just comment us below or mail us on toontricks1994@gmail.com
Previous
Next Post »