Loop
実行制御 | GUI表示 | 演算・変数 | メモリ・DLL操作 | 文字列操作 |
キーボード | マウス | シェル | ウィンドウ | ウィンドウグループ
ステータスバー | コントロール | サウンド | ファイル | INIファイル |
レジストリ | 環境変数 | AutoHotkey | その他 | 設定関係 | オブジェクト
Loop[編集]
コマンドもしくはブロックを指定回数あるいはBreakなどが実行されるまで繰り返す。
Loop [, Count]
Parameters[編集]
| 引数名 | 説明 |
|---|---|
| Count | 繰り返しの回数を指定する。 省略した場合、BreakかReturn か Goto で処理を抜けるまで無限に繰り返す。 以下のような変数参照や式も利用できる。
|
Remarks[編集]
Loopコマンドのあとには、必ずコマンドかブロックが来る。
Loop内でBreakコマンドが実行されると、繰り返しを抜けて繰り返しコマンド・ブロックの次の行に実行が移る。
Loopブロック内でContinueコマンドが実行されると、そこからブロックの終わりまでの処理がスキップされて次の回に進む。
繰り返しの回数は組み込み変数 A_Indexとして参照できる。
A_Index は、繰り返しの1回目では 1である。
ループが2重になっているときは、内側の回数が取得できる。外側のものを参照したければ、別の変数に退避しておく必要がある。
A_Index はループの外では 0になる。
引数に数字以外のものが指定されたとき、特殊なループになる。
ファイルパスのワイルドカードなら、File loop、レジストリのルートキー名ならRegistry loop、 Parseなら文字列分割ループ、 ReadならFile-read loop。
ループ条件を式で指定できる Whileループ もある。
Related[編集]
Whileループ, Loop (ファイル検索), Loop (レジストリ), File-read loop, Parsing loop, Break, Continue, Blocks
Example(s)[編集]
Loop, 3
{
MsgBox, Iteration number is %A_Index%. ; A_Index will be 1, 2, then 3
Sleep, 100
}
Loop
{
If A_Index > 25
Break ; Terminate the loop
If A_Index < 20
Continue ; Skip the below and start a new iteration
MsgBox, A_Index = %A_Index% ; This will display only the numbers 20 through 25
}
サブルーチンや関数でループを中断して戻る。
Gosub, Test1 Exit Test1: Loop { MsgBox, %A_Index%回目 If (A_Index >= 10) Return } Return