有効なショートカットキーを調べる
30 UsableVCLShortcutKey 動作確認 Delphi2007 更新日 2008/01/16(水)

VCLのショートカットキーとして有効なのは

次の103のキーと
『Scroll Lock』『BkSp』『Tab』『Num 5』『Enter』『Shift』『Ctrl』『Alt』
『Esc』『変換』『無変換』『Space』『PgUp』『PgDn』『End』『Home』
『Left』『Up』『Right』『Down』『Sys Req』『Ins』『Del』
『0』『1』『2』『3』『4』『5』『6』『7』『8』『9』
『A』『B』『C』『D』『E』『F』『G』『H』『I』『J』『K』『L』『M』
『N』『O』『P』『Q』『R』『S』『T』『U』『V』『W』『X』『Y』『Z』
『Num *』『Num +』『Num -』『Num Del』『/』
『F1』『F2』『F3』『F4』『F5』『F6』
『F7』『F8』『F9』『F10』『F11』『F12』
『F13』『F14』『F15』『F16』『F17』『F18』
『F19』『F20』『F21』『F22』『F23』『F24』
『Pause』『Right Shift』『:』『;』『,』『-』『.』『@』
『[』『\』『]』『^』『Caps Lock』『ひらがな』『半角/全角』

次のキーの組み合わせ、7パターン+1(何も組み合わせがないもの)
[Shift+]
[Ctrl+]
[Shift+Ctrl+]
[Alt+]
[Shift+Alt+]
[Ctrl+Alt+]
[Shift+Ctrl+Alt+]

あわせて103×8=824のショートカットキーの組み合わせが
あることがわかりました。

実際には[Winキー]などは含まれないので
Windowsで使われるショートカットキー/ホットキーは
もう少しありそうですが、VCL上はこれだけになるようです。

以下、調査したコードです。
────────────────────
//uses Menusを追加
procedure TForm1.Button1Click(Sender: TObject);
var
  i: integer;
  Word1: word;
  ShortCutStr: String;
begin
  Button1.Enabled := False; try

  for i := Low(Word1) to High(Word1) do
  begin
    ShortCutStr := ShortCutToText(i);
    if ( ShortCutStr = '' ) then Continue;

    if Memo1.Lines.IndexOf(ShortCutStr) = -1 then
      Memo1.Lines.Add(ShortCutStr);
      
    Application.ProcessMessages;
  end;
  finally Button1.Enabled := True; end;
end;
────────────────────
実行時間がとても長いです。