Vlax-ldata-get
- 構文
- (vlax-ldata-get dict key [default-data] [private])
- 機能
- 図面ディクショナリまたはオブジェクトから LISP データを取得する。
- 引数
-
- dict : VLA オブジェクト、AutoCAD 図形オブジェクト、またはグローバル ディクショナリの名前を示す文字列。
- key : ディクショナリ キーを指定する文字列。
- default-data : ディクショナリ内に一致するキーが存在しない場合に返す LISP データ。
- private : private 引数に nil 以外の値が指定され、独自の名前空間 VLX から vlax-ldata-get 関数が呼び出されると、vlax-ldata-get 関数は dict からプライベート LISP データを取得する。
- * private 引数を指定した場合は、default-data 引数も指定する必要があります。default-data 引数には nil を使用できる。
- * 独自の名前空間 VLX が、同じ dict および key を使用して、プライベート データと非プライベート データの両方を格納できることに注意。 プライベート データは、同じ VLX からアクセスできるだけだが、非プライベート データは、任意のアプリケーションが取得することができる。
- 戻り値
- key 項目の値。
- サンプル
- Visual LISP コンソール ウィンドウに次のコマンドを入力する。
(vlax-ldata-put "mydict" "mykey" "Mumbo Dumbo") "Mumbo Dumbo" (vlax-ldata-get "mydict" "mykey") "Mumbo Dumbo"
- VLX のプライベート データの使用をテストするには
- Visual LISP コンソール ウィンドウに次のコマンドを入力する。
- (vlax-ldata-put "mydict" "mykey" "Mumbo Dumbo")
- "Mumbo Dumbo"
- (vlax-ldata-get "mydict" "mykey")
- "Mumbo Dumbo"
- ファイルに次のコードを入力し、[アプリケーションを作成]を使用してファイルから VLX を作成する。 [アプリケーションを作成]ウイザードの[エキスパート モード]を使用します。また、[コンパイル オプション]タブで[独自の名前空間]オプションを選択する。
- (vl-doc-export 'ldataput)
- (vl-doc-export 'ldataget)
- (vl-doc-export 'ldataget-nilt)
- (defun ldataput ()
- (princ "This is a test of putting private ldata ")
- (vlax-ldata-put "mydict" "mykey" "Mine! Mine! " T)
- )
- (defun ldataget ()
- (vlax-ldata-get "mydict" "mykey")
- )
- (defun ldataget-nilt ()
- (vlax-ldata-get "mydict" "mykey" nil T)
- )
- VLX ファイルをロードする。
- ldataput 関数を実行して、プライベート データを保存する。
- (ldataput)
- This is a test of putting private ldata
- ldataput 関数を定義しているコードを再確認すること。この関数は "Mine! Mine!" という文字列を格納している。
- ldataget 関数を実行して、LISP データを取得する。
- (ldataget)
- "Mumbo Dumbo"
- ldataget 関数が取得したデータは、ldataput 関数が格納したデータではないことに注意。 これは、ldataget 関数が、private 引数を指定せずに vlax-ldata-get 関数を呼び出したためで、ldataget 関数が取得したデータは、手順 1 で Visual LISP コンソールから vlax-ldata-put 関数を実行して設定したデータになる。
- (ldataget-nilt)
- "Mine! Mine! "
- ldataget-nilt 関数を実行して、LISP データを取得する。
- (ldataget-nilt)
- "Mine! Mine! "
- 今度は、ldataget-nilt 関数が vlax-ldata-get 関数の呼び出しで private 引数を指定しているので、ldataput 関数が保存したプライベート データが返される。
- Visual LISP コンソール プロンプトから、ldataget-nilt 関数が使用するのと同じ呼び出しを実行して、プライベート データを取得する。
- (vlax-ldata-get "mydict" "mykey" nil T)
- "Mumbo Dumbo"
- vlax-ldata-get 関数を独自の名前空間の外側で実行した場合、private 引数は無視される。 指定された dict および key に対する非プライベート データが存在する場合(そのインスタンス内に)、そのデータが取得される。