[ |../../index.htm#lansa/l4wdev06_1145.htm]
現在地:
2.21.2.4 コピー可能なピックリストのコード
以下のコードをピックリストを持つプロパティ・シートを使用するコンポーネントにコピーして貼り付けることができます。コードは、ピックリストとピックリスト・アイテムのコレクション、コレクションにピックリストとアイテムを追加するサブルーチンを作成します。
コンポーネントの先頭に以下の定義を置きます。
* Pick list and pick list item definitions for the property sheet
* pick list counter (index) DEFINE_COM class(#STD_COUNT) name(#CUR_PLIST) * pick list item counter (index) DEFINE_COM class(#STD_COUNT) name(#CUR_PITEM) * collection of pick lists (shown inside the property sheet) DEFINE_COM class(#PRIM_KCOL) name(#PL_COL) collects(#PRIM_PKLT) keyedby(#STD_COUNT) * collection of pick list items DEFINE_COM class(#PRIM_KCOL) name(#PI_COL) collects(#PRIM_PKIT) keyedby(#STD_COUNT)
コンポーネントのすべてのDEFINE_COMステートメントの後に以下の2つのサブルーチンを置きます。
* Add new picklist SUBROUTINE name(ADD_PLIST) * give the new pick list an index number CHANGE field(#CUR_PLIST) to('#Cur_PList 1') ENDROUTINE * Add new picklist item SUBROUTINE name(ADD_PITEM) parms((#PROPERTY *RECEIVED) (#VALUE *RECEIVED)) * give the new pick list item an index number CHANGE field(#CUR_PITEM) to('#Cur_PItem 1') * Set the caption and the value of the item plus assign it into the picklist SET com(#PI_Col<#Cur_PItem>) caption(#property) default(True) value(#value) parent(#PL_COL<#Cur_PList>) ENDROUTINE
[ |../../index.htm#lansa/l4wdev06_1145.htm]