アプリケーションの実行時、すべてのリストのアイテムは、必ずSelectedとFocusのプロパティを持ちます。これらのプロパティは、TrueまたはFalseに設定できます。例えば、アイテムにフォーカスがなく、選択されてもいない場合は、これらのプロパティはFalseに設定されます。
アイテムのプロパティは、リストのCurrentItemプロパティまたはFocusItemプロパティを使用して操作されます。
次のトピックも参照してください。
2.9.8.2 リスト・ビューのフォーカスとフォーカスの解除
2.9.8.4 ソース・フィールドの値であるリスト・アイテムの値
2.9.8.9 リスト・ビューの大きいアイコンを使用したデスクトップ・メニューの作成
CurrentItemは、現在アプリケーションで操作されているリスト・ボックス、リスト・ビュー、コンボ・ボックス、またはグリッドのアイテムです。FocusItem は、デスクトップでフォーカスが置かれているリスト、ツリー・ビュー、またはグリッドのアイテムです。
CurrentItemは、FocusItemと同じようにアイテムのフォーカスを移動するか(ItemGotFocusイベント)、プログラムでGET_ENTRYコマンドまたはSELECTLISTコマンドで設定できます。
現在のアイテムの値は、データベースI/Oコマンドのキーとして使用されます。そのため、データは、通常はCurrentItemを設定するItemGotFocusイベントで取得されます。
SELECTLISTコマンドを使用してリストの各アイテムのプロパティを調べることができます。例えば、以下のコードは、1度に1つのアイテムをCurrentItemにし、Selectedプロパティがtrueに設定されているかどうかをテストします。
SELECTLIST NAMED(#LTVW_1)
IF '#ltvw_1.CurrentItem.Selected *eq True'
do something
ENDIF
ENDSELECT
一度に複数のアイテムを選択できないリスト(ツリー・ビュー、コンボ・ボックス、リスト・ボックス)では、FocusプロパティとSelectedプロパティは常に同じ値になります。つまり、フォーカスが置かれているアイテムだけが選択できます。複数選択可能なリストでは、1つのアイテムだけにフォーカスが置かれますが(FocusプロパティがTrueに設定)、複数のアイテムを選択できます(CtrlキーとShiftキーを使用)。
Selectedプロパティをテストするのと同じ方法でFocusプロパティをテストできます。
#ltvw_1.CurrentItem.Focus *eq True