概要 - アプリケーション固有のデータ(DCL)

client_data_tile 関数は、タイルにアプリケーション固有のデータを割り当てます。

注: AutoLISP での DCL のサポートは Windows のみに制限されています。

タイルのアプリケーション固有データは、コールバック時に変数 $data として使用でき、文字列として返されます。クライアント データは DCL ファイル内で記述することはできず、アプリケーションが実行中のときだけ有効です。クライアント データを使用することは、ユーザ定義の属性を使用することに似ています。両者の主な違いは、ユーザ定義属性は読み込み専用で、クライアント データは実行時に変わり得るということです。また、エンド ユーザはアプリケーションの DCL ファイルでユーザ定義属性を調べることができますが、クライアント データをエンド ユーザが見ることはできません。

プログラムはリスト ボックス(またはポップアップ リスト)で表示されるリストを保持しなければならないので、クライアント データはこの情報を扱うのに役立ちます。MK_LIST 関数を次のように変更すると、リストを引数にすることができます。

(defun MK_LIST (readlist displist / )

このコードはグローバル リスト変数を不要にします。ダイアログ ボックス ハンドラの主要部分に次の呼び出しを挿入すると、client_data_tile を呼び出して短いリストをタイルに関連づけ、その後でアクション式を使用してそのリストを MK_LIST に渡すことができます。

(client_data_tile
  "colorsyslist"
  "Red-Green-Blue Cyan-Magenta-Yellow Hue-Saturation-Value"
)
(action_tile
  "colorsyslist"
  "(setq usrchoice (mk_list $value $data))"
)