| 4D v14.3LISTBOX DUPLICATE COLUMN | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 
 | 
    4D v14.3
 LISTBOX DUPLICATE COLUMN 
         | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| LISTBOX DUPLICATE COLUMN ( {* ;} object ; colPosition ; colName ; colVariable ; headerName ; headerVar {; footerName ; footerVar} ) | ||||||||
| 引数 | 型 | 説明 | ||||||
| * | 演算子 |   | 指定時、 Object はオブジェクト名 (文字列) 省略時、 Object は変数 | |||||
| object | フォームオブジェクト |   | 複製したい列のオブジェクト名( * 指定時)、 または変数 ( * 省略時) | |||||
| colPosition | 倍長整数 |   | 新しく複製した列の位置 | |||||
| colName | 文字 |   | 新しい列の名前 | |||||
| colVariable | 配列, フィールド, 変数 |   | 列の配列変数またはフィールド、変数 | |||||
| headerName | 文字 |   | 列のヘッダーのオブジェクト名 | |||||
| headerVar | 整数変数 |   | 列のヘッダーの変数 | |||||
| footerName | 文字 |   | 列のフッターのオブジェクト名 | |||||
| footerVar | 変数 |   | 列のフッターの変数 | |||||
LISTBOX DUPLICATE COLUMNコマンドは、 object と * 演算子によって指定された列を、プログラムによって実行中のフォームにおいて複製します。(アプリケーションモード)
注: 列を複製する機能は以前の4D にもありましたが、デザインモードにおいてフォームエディターのコンテキストメニューの中にある列複製コマンドを使用することによってのみ可能、というものでした。
複製元となる列においてプロパティリストやオブジェクト管理コマンド (OBJECT SET COLOR 等) を使用して設定されたスタイルオプション(サイズ、背景色、書式等)は、複製先の列にも反映されます。また、フォームのオブジェクトメソッド、スタイルとカラー配列やイベントなどといったものも複製されます。
しかしながら、データソース (リストボックスに定義されたソースにより、配列またはセレクション) に加えてスタイル配列、カラー配列は複製されません。列を複製した際には、デベロッパが新しい列にてそれらのデータを定義しなおさなければなりません。
object と * 演算子を使用して複製する列を指定します。任意の * 演算子を渡した場合、 object 引数でオブジェクト名を文字列で指定します。省略時には object 引数で列変数を指定します。
注: このコマンドは階層リストボックスの最初の列を指定した場合には何もしません。
複製した列は、 colPosition 引数で指定した位置の一つ前に置かれます。 colPosition が列全体の総数より大きい場合、複製した列は最後の列の後ろに置かれます。
colName 引数と colVariable 引数には、オブジェクト名と、新しく複製された列の変数を渡します。
繰り返しになりますが、オリジナルの列のデータソースまでは複製されないことにご注意ください。複製された列に対し、新たにソースとなる変数、配列、フィールドを設定してあげる必要があります。
headerName と headerVariable 引数には、新たに作成する列のヘッダーのオブジェクト名と変数を渡します。同様に、footerName 引数と footerVariable 引数にオブジェクト名と変数を渡してあげることで新しい列のフッターを設定することもできます。 footerVariable 引数省略時には 4D はフォーム変数を割り当てます。
Note: オブジェクト名は、フォーム内において固有でなければなりません。colName 引数、headerName 引数、 footerName 引数などで渡す名前がこれまでに使用されていないことを確認して下さい。重複していた場合、複製は行われず、エラーが発生します。
このコマンドはフォーム表示中に使用される必要があります。通常、フォームの On Load イベント内か、ユーザーのアクションへの反応(On Clicked イベント) にて使用されます。
以下のような配列型のリストボックスの中で、 "First Name" の列を複製して入力できるようにしたい場合:

ボタンのコードは以下のようになります:
 ARRAY TEXT(arrFirstNames2;Records in table([Members]))
 LISTBOX DUPLICATE COLUMN(*;"column2";3;"col2bis";arrFirstNames2;"FirstNameA";vHead2A)
 OBJECT SET TITLE(*;"FirstNameA";"Middle Name")
 EDIT ITEM(*;"col2A";0)ボタンをクリックすると、リストボックスは以下のようになります:

	プロダクト: 4D
	テーマ: リストボックス
	番号: 
        1273
        
        
        
	

	初出: 4D v14
	ランゲージリファレンス ( 4D v14 R2)
	ランゲージリファレンス ( 4D v14.3)
Parent of : LISTBOX DUPLICATE COLUMN ( 4D v14 R3)