#MaxHotkeysPerInterval

提供: AutoHotkey Wiki
移動: 案内検索

実行制御 | GUI表示 | 演算・変数 | メモリ・DLL操作 | 文字列操作 | キーボード | マウス | シェル | ウィンドウ | ウィンドウグループ
ステータスバー | コントロール | サウンド | ファイル | INIファイル | レジストリ | 環境変数 | AutoHotkey | その他 | 設定関係 | オブジェクト

#MaxHotkeysPerInterval[編集]

指定時間の間に実行できる最大のホットキー数を設定。(#HotkeyIntervalと共に使用)

#MaxHotkeysPerInterval Value

Parameters[編集]

引数名 説明
Value ホットキーの実行数の上限を指定(初期値は70)

Remarks[編集]

この機能により、無限再帰ホットキー呼び出しなど、ホットキーイベントが実行され続けてしまう不具合を脱出することができる。
たとえば、 ^c::Send,^cという定義をした場合、Ctrl+Cが押されるとCtrl+Cを送信するサブルーチンが実行され、そのCtrl+Cに反応して再度サブリーチンが実行され、無限ループに陥ってしまう。
ここで#HotkeyInterval、#MaxHotkeysPerIntervalの設定が適切であれば、指定回数のホットキーが実行された時点で下記の警告が表示されスクリプトが停止する。

XX hotkeys have been received in the last XXXXms.

Do you want to continue?
(see #MaxHotkeysPerInterval in the help file)

q::Send,dのようなキー入れ替えを行っており、キーを押しっぱなしにしたときのキーリピート間隔を短くしている場合、キーリピートを続けたときに警告が表示されてしまう場合がある。
#MaxHotkeysPerInterval 70位にしておけば、コントロールパネルのキーボード設定で 表示の間隔を最速にしていても問題ないはずである。

Related[編集]

#HotkeyInterval

Example(s)[編集]

#MaxHotkeysPerInterval 200