Gui,Add,ListBox

GUIウィンドウにリストボックスを追加する

Gui, Add, ListBox [, Options, Text]

Parameters

引数名説明
Options オプションを半角スペース区切りで列挙。
Gui,Addの項参照。
Vで変数名を指定した場合、「GUI,Submit」やGuiControlGetコマンドで選択されている項目名を取得できる。未選択時は空文字列になる
Gでサブルーチン名を指定した場合、選択が変わるたびにそのサブルーチンが実行される。
固有のオプションについては、下記参照。
Text 「|」で区切って選択可能項目を列挙する。
項目の後の「|」を二つにすると、その項目が初期状態で選択された状態になる。(例:「Default||aaa|bbb」「aaa|bbb|Default||」)
Gui,+Delimiter`n」のようにすると、区切り文字を「|」以外のもの(この例では改行)に変更できる。

固有のOption

Sort
項目を項目名順に並び替えて表示する
半角文字をタイプすると先頭が一致する項目に移動する「インクリメンタルサーチ」の機能も有効になる。
ReadOnly
選択項目が反転表示されなくなる。
Vオプションで指定した変数では、フォーカスの合わさっている項目が取得される。
Multiオプションとの併用はできない。
AltSubmit
Gui,SubmitGuiControlGetで取得される情報を変更する。
通常は、選択された項目のテキストが取得されるが、このオプションを指定すると、選択された項目の番号が取得される。(1番目が「1」、未選択時は空文字列)
Multi
Shiftを押しながら選択することで、複数選択が可能になる。Ctrlを押しながらクリックすれば、連続していない項目も選択可能。
このオプションを指定した場合、Vオプションで指定した変数には、選択項目(通常は項目の文字列、AltSubmitが共に指定された場合は項目の番号)が「|」で区切って取得される。
区切り文字は「Gui,+Delimiter`n」のようにして変更できる。
Loop, parse, MyListBox, |」とすることで、各選択項目に対して処理を行える。
Tn
タブ位置を指定する。
nには数値を指定。n×2ピクセルほどの幅になる。
デフォルトは32。
「t8 t16 t8」のように複数を指定すると、タブ位置を個別に指定できるようになる。
指定した個数以降のタブ位置は、最後に指定した幅で刻まれる。
最大50個まで指定できる。
ChooseN
Nに最初に選択される項目の番号を指定する。

Remarks

Multiオプションで複数選択可にしている場合、下記のようにしてすべての項目を選択・選択解除することができる。

Gui +LastFound  ; Avoids the need to specify WinTitle below.
If(V)
	PostMessage, 0x185, 1, -1, ListBox1  ; Select all items. 0x185 is LB_SETSEL.
else
	PostMessage, 0x185, 0, -1, ListBox1  ; Deselect all items.

Related

GUI, Gui,Add