「Vla-addobject」の版間の差分
細編集の要約なし  | 
				細編集の要約なし  | 
				||
| 17行目: | 17行目: | ||
; 戻り値  | ; 戻り値  | ||
: 新しく作成される VLA オブジェクト  | : 新しく作成される VLA オブジェクト  | ||
:* 注意  | :* 注意  | ||
2014年12月2日 (火) 22:36時点における版
- 構文
 - (vla-addobject dictObj keyName className)
 
- 機能
 - 名前の付いたディクショナリにオブジェクトを追加します。
- サポートされているプラットフォーム: Windows のみ
 
 
- 引数
 - 
- dictObj … Dictionary の VLA オブジェクト
 - keyName … このオブジェクトのディクショナリにリストされるキーワードの文字列。
 - className … ディクショナリに作成されるオブジェクトの rxClassName 文字列。
 
 
- 戻り値
 - 新しく作成される VLA オブジェクト
 
- 注意
 
- このメソッドは、ObjectName で指定された新しいエントリをディクショナリに追加する。エントリが既に存在している場合、そのエントリが新しいオブジェクトに置き換えられる。オブジェクトの名前は、KeyWord で指定する。
 - 例えば、ThirdKeyword という Keyword で、オブジェクト タイプが Object3 であるオブジェクトは、次のようにすることで MyDictionary に追加できる。
- MyDictionary
 - Keyword オブジェクト
 - FirstKeyword Object1
 - SecondKeyword Object2
 - ThirdKeyword Object3
 
 
- Note: このメソッドが正しく機能するようにするためには、オブジェクトを定義する ObjectARX アプリケーションをロードする必要がある。ObjectARX アプリケーションをロードする方法は、vla-loadarx を参照。
 
- サンプル
 
(vl-load-com)
(defun c:Example_AddObject()
    ;; ディクショナリにカスタムオブジェクトを作成・追加するサンプル
    (setq acadObj (vlax-get-acad-object))
    (setq doc (vla-get-ActiveDocument acadObj))
    (setq dictionaries (vla-get-Dictionaries doc))
  
    (setq dictObj (vla-Add dictionaries "TEST_DICTIONARY"))
    
    ;; カスタムオブジェクトの ObjectARX アプリケーションをロード。
    (vla-LoadArx acadObj "MyARXApp.dll")
    
    ;; カスタムオブジェクトをディクショナリに作成
    (setq keyName "OBJ1")
    (setq className "CAsdkDictObject")
    (setq customObj (vla-AddObject dictObj keyName className))
)
関連事項