|
|
| 1行目: |
1行目: |
| = 概要 =
| |
| キー押下状態を取得する実行ファイルです。
| |
|
| |
|
| Shift、Ctrl、Alt いずれかのキーの押下状態を取得できます。
| |
| マクロスクリプトからキー状態を取得し、状態に応じて動作をコントロールしたくて作成しました。
| |
|
| |
| 作成されたマクロから利用できますので、ご自由にお使いください。
| |
|
| |
|
| |
| zipファイルをダウンロードしたら、ファイルのプロパティ画面で「ブロックの解除」を行ってください。
| |
| (これをしないと実行時に警告が表示されることがあります)
| |
|
| |
| その後、zipファイルを展開して、マクロから実行されるフォルダーに配置してください。
| |
| (推奨は "Macros"フォルダーとします)
| |
|
| |
| [[ファイル:GetKeyState.zip]]
| |
|
| |
| = 更新履歴 =
| |
| 2019/3/4 新規作成
| |
|
| |
| 2019/3/23 公開ページの変更(中身に変更はありません)
| |
|
| |
| = 使い方 =
| |
| コマンドライン引数で、"Shift" "Ctrl" "Alt" のいずれかを渡してください。
| |
| * 大文字小文字は区別しません
| |
| * 実は先頭の1文字しか判断していませんので、"s"のみとかでも大丈夫です
| |
|
| |
|
| |
| 戻り値(終了コード)
| |
| * 1: キーが押されている
| |
| * 0: キーは押されていない
| |
| * -1: エラー(引数間違い、メッセージボックスを表示します)
| |
|
| |
|
| |
| マクロにショートカットキーを割り当てる際は、該当キーありとなしの両方を割り当ててください
| |
| * Shift+F8 / F8 など
| |
|
| |
| 起動までに若干のタイムラグがありますので、すばやく操作すると取りこぼすことがあります。
| |
| そういう意味では、ショートカットキーにはあまり向かないかもしれません。
| |
| 私は、ツールバー起動で使っています。
| |
|
| |
|
| |
| = 実装例 =
| |
| <source lang="javascript">
| |
| var wshShell = new ActiveXObject("WScript.Shell");
| |
|
| |
| // カレントディレクトリをマクロディレクトリに変更
| |
| wshShell.CurrentDirectory = editor.FullName.match(/^.*\\/)[0] + 'Macros';
| |
|
| |
| // SHIFTキー状態を取得
| |
| var shift = wshShell.Run("GetKeyState.exe shift", 0, true);
| |
| if(shift == -1) window.Quit();
| |
| if(shift == 1) window.Alert("Shiftキーが押されています");
| |
| </source>
| |
|
| |
|
| |
|
| |
| ソースも置いときます(VS2005 C++)
| |
| (こちらは通常ダウンロードの必要はありません)
| |
|
| |
| [[ファイル:GetKeyStateSrc.zip]]
| |