メインコンテンツまでスキップ
バージョン: 20 R7 BETA

SELECT LIST ITEMS BY REFERENCE

SELECT LIST ITEMS BY REFERENCE ( list ; itemRef {; refArray} )

引数説明
listIntegerリスト参照番号
itemRefInteger項目参照番号 または 0: リストに最後に追加された項目
refArrayInteger array項目参照番号配列

このコマンドはスレッドセーフではないため、プリエンプティブなコードには使えません。

説明

SELECT LIST ITEMS BY REFERENCE コマンドは、listに渡された参照番号のリストにおいて、itemRefならびにオプションとしてrefArrayに渡された項目参照番号を持つ項目を選択します。

渡した項目参照番号の項目が存在しない場合、コマンドは何も行いません。

項目が現在表示されていない場合(つまり、縮小されているサブリスト内にその項目がある場合)、コマンドは必要なサブリストを展開し、その項目を表示します。

refArray引数を渡さない場合、itemRef引数は選択される項目の参照番号を示します。項目番号がそのリスト中の項目に対応しない場合、コマンドは何も行いません。リストに最後に追加された項目を示すために値0を指定することもできます。

任意の引数であるrefArrayを使用すると、リスト中で複数の項目を同時に選択することができます。refArrayには必ず配列を渡し、その各要素は選択する項目の固定参照番号を示します。
その場合、結果として選択された各項目の中で、itemRef 引数に指定した項目がそのリストの新しいカレント項目になります。この項目は、配列によって定義した一連の項目に含まれていない可能性もあります。カレント項目とは、具体的に言うと、EDIT ITEMコマンドを使用した場合に編集モードに移行される項目のことです。

Note: 階層リスト内で複数のリスト項目を同時に選択するには(手動、あるいはプログラムから)、そのリストに対して複数選択可プロパティを有効に設定しておかなくてはなりません。このプロパティの設定は、SET LIST PROPERTIESコマンドを使用して行います。

項目参照番号を使用して作業を実行する場合、項目がユニークな参照番号を持つリストを作成します。そうでなければ、項目を区別できません。詳細についてはAPPEND TO LISTの説明を参照してください。

例題

hListは一意の参照番号が付いた項目を持つリストです。以下のボタン用オブジェクトメソッドは、現在選択されている項目に親項目が存在する場合にはその親項目を選択します:

 $vlItemPos:=Selected list items(hList) // 選択された項目の位置を取得
 GET LIST ITEM(hList;$vlItemPos;$vlItemRef;$vsItemText) // 選択された項目の参照番号を取得
 $vlParentItemRef:=List item parent(hList;$vlItemRef) // 親項目の参照を取得 (あれば)
 If($vlParentItemRef>0)
    SELECT LIST ITEM BY REFERENCE(hList;List item parent(hList;$vlItemRef)) // 親項目を選択
 End if

参照

EDIT ITEM
SELECT LIST ITEMS BY POSITION
Selected list items