Checkboxes プロパティ

LANSA

Checkboxes プロパティ

Checkboxesはリスト・ビューの項目に対して表示することができます。

Checkboxesプロパティを使用して、リスト・ビューの項目にチェック・ボックスを表示します。 このプロパティがTrueに設定されていると、チェック・ボックスが表示されます。

ユーザーがクリックする、またはその項目のCheckedプロパティがプログラム上で設定されると、チェック・ボックスが選択されます。 リスト・ビューの項目が選択されているかどうかを調べるには、項目のCheckedプロパティを使います。

CheckboxesプロパティがTrueで、ComponentVersionが0に設定されている時は、項目のImageStateプロパティを使用して指定されたイメージは無視されることに注意してください。

チェックボックスをクリックすることで、リスト・ビューのItemChangedイベントが起動されます。

このプロパティがどのように使用されるかを確認するには、次のコードをフォームにコピー・貼り付けてください。 最初のリストの選択されたチェック・ボックスの項目は2番目のリストに追加されます。 チェック・ボックスがクリアされると、項目は2番目のリストから取り除かれます。

Function Options(*DIRECT) 

BEGIN_COM HEIGHT(331) LEFT(302) TOP(108) WIDTH(535)
DEFINE_COM CLASS(#PRIM_LTVW) NAME(#LTVW_1) CHECKBOXES(True) DISPLAYPOSITION(2) FULLROWSELECT(True) HEIGHT(304) LEFT(0) PARENT(#COM_OWNER) SELECTIONSTYLE(Single) TABPOSITION(2) TOP(0) WIDTH(236)
DEFINE_COM CLASS(#PRIM_LTVW) NAME(#LTVW_2) DISPLAYPOSITION(1) FULLROWSELECT(True) HEIGHT(304) LEFT(240) PARENT(#COM_OWNER) SELECTIONSTYLE(Single) TABPOSITION(1) TOP(0) WIDTH(287)
DEFINE_COM CLASS(#PRIM_LVCL) NAME(#LVCL_1) DISPLAYPOSITION(1) PARENT(#LTVW_1) SOURCE(#EMPNO) WIDTH(26)
DEFINE_COM CLASS(#PRIM_LVCL) NAME(#LVCL_2) DISPLAYPOSITION(2) PARENT(#LTVW_1) SOURCE(#SURNAME) WIDTH(32)
DEFINE_COM CLASS(#PRIM_LVCL) NAME(#LVCL_3) DISPLAYPOSITION(3) PARENT(#LTVW_1) SOURCE(#GIVENAME) WIDTH(20) WIDTHTYPE(Remainder)
DEFINE_COM CLASS(#PRIM_LVCL) NAME(#LVCL_4) DISPLAYPOSITION(1) PARENT(#LTVW_2) SOURCE(#EMPNO) WIDTH(24)
DEFINE_COM CLASS(#PRIM_LVCL) NAME(#LVCL_5) DISPLAYPOSITION(2) PARENT(#LTVW_2) SOURCE(#SURNAME) WIDTH(31)
DEFINE_COM CLASS(#PRIM_LVCL) NAME(#LVCL_6) DISPLAYPOSITION(3) PARENT(#LTVW_2) SOURCE(#GIVENAME) WIDTH(20) WIDTHTYPE(Remainder)
Evtroutine Handling(#com_owner.CreateInstance)
Select Fields(#LTVW_1) From_File(PSLMST)
Add_Entry To_List(#LTVW_1)
Endselect
Endroutine
Evtroutine Handling(#LTVW_1.ItemChanged) Options(*NOCLEARMESSAGES *NOCLEARERRORS)
If Cond('#ltvw_1.currentitem.checked = true')
Add_Entry To_List(#LTVW_2)
Else
Invoke Method(#com_owner.remove_item) Employee(#empno)
Endif
Endroutine
Mthroutine Name(Remove_item)
Define_Map For(*input) Class(#empno) Name(#employee)
Selectlist Named(#LTVW_2)
Continue If('#empno *ne #employee.value')
Dlt_Entry From_List(#LTVW_2)
Leave
Endselect
Endroutine
End_Com