listview

リストビューの作成

listview n1,n2,n3

n1 : 幅
n2 : 高さ
n3 : スタイル

解説

リストビューを作成します。
リストビューは、Explorerの右側にある様なオブジェクトです。
この命令を呼び出した後、statにリストビューのIDが代入されます。

スタイル
スタイルは以下の値を足して、複数のスタイルを指定することができます。
0           大きいアイコン表示
1           詳細表示
2           小さいアイコン表示
3           リスト表示
4           複数選択できないようにする
8           listviewが選択されていないときでも、選択されているアイテムの色を変える
$10         昇順でアイテムをソートする
$20         降順でアイテムをソートする
$40         セットしたイメージリストをlistview消去時に消去しない
(複数のlistviewで同じイメージを使う場合に指定する)
$80         アイコン表示のとき、アイテムのテキストを折り返さない
(デフォルトではテキストは長いと折り返される)
$100        ?
$800        ?
$2000       スクロールバーがつかない
$4000       欄の名前を表示する部分を付けない

以下のスタイルはcomctl32.dllのバージョンによっては有効にならない場合があります。
$10000      リスト表示時に罫線を付ける
$40000      チェックボックスを付ける
$100000     欄の名前を表示する所をドラッグ&ドロップできる
$200000     リスト表示時にアイテムが選択されたときサブアイテムも色を変える
$400000     アイテムの上にマウスポインタが来たときカーソルを指の形にする
$800000     アイテムクリックされたときカーソルを指の形にする
$1000000    スクロールバーを平らなスタイルに変える
$8000000    $400000,$800000のスタイルを指定したとき、アイテムの上に
            マウスポインタが来ると下線がつく
$10000000   $400000,$800000のスタイルを指定したとき、下線がつく


※チェックボックスを付けたときのスタイルで、アイテムがチェックされているかを
調べるときは以下のようにしてください

	;list_id : listviewのID
	;idx : アイテムのインデックス
	prm=list_id,4140,idx,61440
	sendmsg prm
	chk=stat>>12-1
	if chk : dialog ""+idx+"番目のアイテムはチェックされています"

チェックをはずしたり、つけたりしたいときは以下のようにします。

	dim lvi,9
	idx = 0			;idx番目のアイテム
	if uncheck != 0 {
		lvi = 8,0,0,1<<12,$f000
	} else {
		lvi = 8,0,0,2<<12,$f000
	}
	prm = list_id,4139,idx : getptr prm.3,lvi : sendmsg prm

※listviewはHSP標準命令のclsscreen命令では消去されません。
_clsまたは_clrobjを使用してください。

関連項目

listaddリストビューにアイテムを追加
listdelリストビューのアイテムを消去
listaddclリストビューに欄を追加
listdelcl欄を消去
listselリストビューのアイテムを選択
listgetリストビューのアイテムを取得
listmaxリストビューのアイテムの数を取得
listiconリストビューのアイコンを設定
listhitマウスの下にあるアイテムを取得
sel_listview操作するリストビューを選択

サンプル逆引き (2)

module_test3.as
module_test4.as

情報

バージョン2.61
作成日2004/03/01
著作者tom
URLhttp://www5b.biglobe.ne.jp/~diamond/hsp/hsp2file.htm
備考llmod.asをインクルードする。必要に応じてlistview.as,progbox.as,trackbox.as,treebox.as,udbtn.asをインクルードする
タイプ拡張命令
グループオブジェクト制御命令
hs ファイルhsphelp\llmod_objects.hs