LISTBOX SELECT BREAK
LISTBOX SELECT BREAK ( {* ;} object ; row ; column {; action} )
引数 | 型 | 説明 | |
---|---|---|---|
* | 演算子 | → | 指定時、objectはオブジェクト名 (文字列) 省略時、objectは変数 |
object | any | → | オブジェクト名 (* 指定時) または 変数 (* 省略時) |
row | Integer | → | ブレーク行の番号 |
column | Integer | → | ブレーク列の番号 |
action | Integer | → | 選択アクション |
このコマンドはスレッドセーフではないため、プリエンプティブなコードには使えません。
説明
LISTBOX SELECT BREAK を使用して objectと***で指定したリストボックス中でブレーク行を選択できます。リストボックスは階層モードで表示されていなければなりません。
オプションの*** 引数を渡した場合、object引数はオブジェクト名 (文字列) です。この引数を渡さない場合objectは変数です。この場合、文字列ではなく変数参照を渡します。
ブレーク行は階層を表現するために追加されますが、それは配列の既存の行には対応しません。選択するためにブレーク行を指定するには、rowおよびcolumn引数に、対応する配列中の最初のオカレンスに対応する行と列の番号を渡さなければなりません。これらの値はユーザがブレーク行を選択したとき、LISTBOX GET CELL POSITION コマンドから返されます。この原則は階層リストボックスの"選択や位置の管理" で説明されています。
action引数が渡されると、ブレーク行が既にリストボックス中に存在するときの実行する選択アクションを設定できます。値または"List Box"テーマの以下の定数を渡すことができます:
定数 | 型 | 値 | コメント |
---|---|---|---|
lk add to selection | 倍長整数 | 1 | 選択された行は既存の選択行に追加されます。指定した行が既存の選択に属している場合、コマンドは何も行いません。 |
lk remove from selection | 倍長整数 | 2 | 指定された行は既存の選択行から取り除かれます。指定した行が既存の選択に属さない場合、コマンドは何も行いません。 |
lk replace selection | 倍長整数 | 0 | 選択された行が新しい選択行となり、既存のものと置き換えられます。このコマンドは、ユーザが行をクリックした場合と同じ結果になります。これは (action 引数が省略された時の) デフォルトの動作です。 |
注: リストボックスのセレクションハイライトを非表示オプションをチェックしていた場合:
- 利用可能なオプションを仕様してリストボックスセレクションを可視状態にする必要があります。このやり方の詳細な情報については、選択行の見た目をカスタマイズを参照してください。
- この場合には、階層リストボックスのブレーク行をハイライトすることはできません(階層リストボックスの制限参照)。
例題
リストボックスに表示されている以下の配列があります:
"Normandy"ブレーク行を選択します:
$row:=Find in array(T2;"Normandy")
$column:=2
LISTBOX COLLAPSE(*;"MyListbox") // 全レベルを折りたたむ
LISTBOX SELECT BREAK(*;"MyListbox";$row;$column)
以下のような結果になります: