日本語プログラミング言語「なでしこ」 > 戻る

キー送信

キー送信命令を使うことでプログラムから任意のキーを入力しているようにエミュレートします。
■普通にキー送信
■特殊キー
■利用例
■キーの組み合わせ例
■Windowsの特殊キー

普通にキー送信

以下のプログラムはメモ帳を起動して、適当なキーを送信します。

「notepad.exe」を起動。
1秒待つ
「abc」をキー送信
0.5秒待つ
「ABC」をキー送信
0.5秒待つ

特殊キー

'+'、'^'、'%'、'~'、'('、')'、'{'、'}'、'&'は特別な意味を持っています。これらの文字を渡すには、中かっこ'{}'で囲んで指定します。たとえば'+'は'{+}'のように指定します。

以下は特殊キーの一覧です。

  BackSpace     {BACKSPACE},{BS}または{BKSP}
  Tab           {TAB}
  Ctrl+Break    {BREAK}
  Enter         {ENTER} または ~
  Home,End      {HOME},{END}
  Esc,Help      {ESC},{HELP}
  Ins           {INSERT}
  Del           {DELETE}または{DEL}
  ↑,↓,←,↑   {UP},{DOWN},{LEFT},{RIGHT}
  PrintScreen {PRTSC}
  PageDown {PGDN}
  PageUp {PGUP}
  CapsLock      {CAPSLOCK}
  NumLock {NUMLOCK}
  ScrollLock {SCROLLLOCK}
  F1〜F16 {F1}...{F16}
  ALT+全角/半角 {IME}

Shiftキー、Ctrlキー、Altキーと他のキーとの組み合わせを指定する場合は、通常のキー表現の前に次のキー表現を単独、または組み合わせて記述します。

  キー          表現
  --------------------------------------------------------------------
  Shift         +
  Ctrl          ^
  Alt           %
  Win           &

  Shiftキー、Ctrlキー、Altキーを押した状態で、他のキーを連続して押す操作を指定するには、連続するキー操作をかっこ()で囲みます。例えば、Altキーを押しながら'F'と'X'を押す操作の場合は'%(AF)'の様にします。

  同じキーストロークの繰り返しを指定するには'{Key Number}'という表現を使います。たとえば'{RIGHT 10}'は'→'を10回、'{- 40}'は'-'を40回押すことを意味します。

(解説:七☆星さんのDelphiソースより抜粋させていただきました。)

利用例

以下はメモ帳を起動しても文字を書き込んで自動でメモ帳を閉じるという連携技です。

「notepad.exe」を、起動。
0.5秒待つ。

#普通にキー送信
「メモ帳の遠隔操作。そのまましばらく待って!」をキー送信。 
1秒待つ
「{改行}このように、外部アプリを遠隔操作できます。」をキー送信。 
1秒待つ
 「{改行}びっくりした?」をキー送信。 

#特殊キー Alt + F, Xを送る
1秒待つ
「無題」「%FX」をキー送信。 

2秒待つ
「メモ帳」「N」をキー送信。

 このサンプルのメモ帳程度だと、面白いだけで、それほど、ありがたみを感じませんが、エクセル・ワードを起動して、メニューより印刷をするように、ショートカットキーを送信したり、特定時刻に、バックアップソフトを起動して、自動的にバックアップのボタンを押させたり・・・アイデア次第で、いろいろなことが出来ます。

キーの組み合わせ例

Shift + Ctrl + 1 を送りたい場合は『^+1』を。

Ctrl + Alt + F1 を送りたい場合は『^%{F1}』を。

なでしこでは、「」の中の、{}は、変数の展開として認識してしまうので、カッコで括るのには『』を使う必要があります。

Windowsの特殊キー

例えば、ウィンドウの最小化[Win]+[m]なら『&m』と書きます。エクスプローラーの起動なら「&e」です。



→トップへ →目次へ