Vla-rename
- 構文
 - (vla-rename vla-object oldname newname )
 
- 機能
 - ディクショナリ内の項目や保存された画層設定の名前を変更する。
 
- 引数
 - 選択セットの場合
 - 
- vla-object … Dictionary、LayerStateManager の VLA オブジェクト
 - oldname … ディクショナリ内のオブジェクトの現在の名前(キーワード)または、保存された画層設定セットの名前。
 - newname … ディクショナリ内のオブジェクトの新しい名前(キーワード)または、保存された画層設定の新しい名前。
 
 
- 戻り値
 - なし
 
- サンプル
 
(vl-load-com)
(defun c:Example_Rename()
    ;; ディクショナリにカスタムオブジェクトを作成して
    ;; リネームするサンプル
    (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 アプリを読み込む
    ;; ノート : ここで読み込むアプリケーションが存在しないと実行時エラーになるので、 ObjectARX アプリケーション名とパスは適宜変更すること。
    (vla-LoadArx acadObj "MyARXApp.dll")
    
    ;; ディクショナリにカスタムオブジェクトを追加
    (setq keyName "OBJ1")
    (setq className "MyAPPDictObject")
    
    (setq customObj (vla-AddObject dictObj keyName className))
    
    ;; オブジェクトをリネーム
    (vla-Rename dictObj keyName "NewKeyName")
)
(defun c:Example_RenameLayerSettings()
    ;; 画層設定を作成して"ColorLinetype" から 
    ;; "OldColorLinetype" にリネームするサンプル
    (setq acadObj (vlax-get-acad-object))
    (setq doc (vla-get-ActiveDocument acadObj))
  
    ;; LayerStateManager オブジェクトにアクセス
    (setq oLSM (vla-GetInterfaceObject acadObj "AutoCAD.AcadLayerStateManager.20"))
	   
    ;; 現在の図面データベースに LayerStateManager オブジェクトを
    ;; 関連付け。
    (vla-SetDatabase oLSM (vla-get-Database doc))
	
    (vla-Save oLSM "ColorLinetype" (+ acLsColor acLsLineType))
    ;; 画層設定をリネームして保存
    (vla-Rename oLSM "ColorLinetype" "OldColorLinetype")
)
関連事項