listget

リストビューのアイテムを取得

listget v1,n2,n3,n4

v1 : 取得したものを入れる変数
n2 : アイテムのインデックス
n3 : 取得するもの
n4 : 取得するアイテムの状態

解説

主にアイテムのインデックスを取得します。
n3で以下の値を代入すると取得するものが変わってきます。


n3の値                               n4の値
1   n2の上のアイテムのindexを取得    0 or 取得するアイテムの状態
2   n2の下のアイテムのindexを取得    0 or 取得するアイテムの状態
3   n2の左のアイテムのindexを取得    0 or 取得するアイテムの状態
4   n2の右のアイテムのindexを取得    0 or 取得するアイテムの状態
5   n2のテキスト取得                 変数のサイズ or -1
6   n2のアイテムに持たせた値を取得   0 or 1


n3を5にしたときはstatにアイテムに持たせた値が入ります。
n3を5にしたときn4を-1にすると、v1に入っている文字列を使ってアイテムのテキスト
を再設定できます。
n3を6にしたときn4を1にすると、v1に入っている値を使ってアイテムに持たせた値を
再設定できます。

n4を以下の値にするとn4で指定した状態のアイテムを(n2+1)番目のアイテムから
n3で指定した方向に向かって検索します。
(n3を0にすると方向は指定しません)
n4の状態のアイテムが見つかればv1にアイテムのインデックスが代入されます。
見つからなかった場合はv1に-1が代入されます。
n2を-1にすると先頭のアイテムから検索します。


n4の値
0    状態は指定しない
1    フォーカスがあっている
2    選択されている
4    切り取られた状態
8    ハイライト

サンプル

	#include "llmod.as"
	#include "listview.as"
	listview winx-6,winy/2,1
	lv=stat
	listaddcl 0,"name"
	repeat 30 : listadd cnt,"アイテム No."+cnt : loop
	button "check",*check
	alloc bf,1024*32 : bf=""
	mesbox bf,winx-6,winy-csry-26
	_objsel lv
	stop
*check
	bf="" : notesel bf : start=-1	;先頭から検索
	repeat -1
		listget chk,start,0,2	;選択状態のアイテムを探す
		if chk=-1 : break	;見つからない場合-1が代入される
		listget s,chk,5		;見つかったアイテムのテキストを取得
		noteadd s+"は選択されています"
		start=chk
	loop
	objprm 1,bf
	stop

関連項目

listaddリストビューにアイテムを追加
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