Ich habe das selbe Problem mit Redeemers Vorschlag, weder per TApplicationEvents noch per TApplication, jeweils das TShortcutEvent Event, kommt dabei nur etwas positives heraus wenn numlock ausgeschaltet ist.
Ich hatte gehofft auf diese Weise beides abfangen zu können
Delphi-Quellcode:
procedure TForm1.ApplicationEvents1ShortCut(var Msg: TWMKey;
var Handled: Boolean);
var
ss: TShiftState;
begin
ss := KeyDataToShiftState(Msg.KeyData);
if ss = [ssShift] then
begin
if ((Msg.Charcode = VK_NUMPAD0) or (Msg.Charcode = VK_INSERT)) then // theoretisch sollte das ohne/mit numlock codes abdecken
begin
ShowMessage(IntToStr(Msg.CharCode));
Handled := True;
end;
end;
end;
Pustekuchen.