「Vla-close」の版間の差分

提供:GizmoLabs - だいたい CAD LISP なサイト
編集の要約なし
編集の要約なし
9行目: 9行目:


; 引数
; 引数
:* vla-object … ドキュメントのVLAオブジェクト
:* vla-object … VLAオブジェクト(Document、Documents)




32行目: 32行目:
       (list mydocs :vlax-false)))
       (list mydocs :vlax-false)))
   (command "vbastmt" "activedocument.close false"))
   (command "vbastmt" "activedocument.close false"))
;;-----
(vl-load-com)
(defun c:Example_Close()
    ;; すべての図面を閉じるサンプル
    (setq acadObj (vlax-get-acad-object))
    (setq curDoc (vla-get-ActiveDocument acadObj))
    (setq docs (vla-get-Documents acadObj))
    ;; すべての図面を変更を破棄して閉じる
    (vlax-for doc docs
        (if (/= (vla-get-Name doc) (vla-get-Name curDoc))
    (progn
        (alert (strcat "Closing " (vla-get-Name doc) " file."))
                (vla-Close doc :vlax-false)
    )
        )
    )
)
</pre>
</pre>



2015年5月17日 (日) 12:21時点における版

構文
(vla-close vla-object [bool])


機能
ファイルを閉じる


引数
  • vla-object … VLAオブジェクト(Document、Documents)


戻り値
nil


サンプル
 ; 開いて、ファイルのダンプ出して、閉じる。
(setq mydocs (vla-get-documents (vlax-get-acad-object)))
(setq mydoc (vla-open mydocs "C:\\drawing\\drawing1.dwg"))
(vlax-dump-object mydoc)
(vla-close mydoc)

(defun c:myqq ()
  ; 開いている図面ファイルを全て閉じるけどCADは終了しないコマンド(VBA使う版)
  (vl-load-com)
  (vlax-for mydocs (vla-get-documents (vlax-get-acad-object))
    (vl-catch-all-apply
      'vla-close
      (list mydocs :vlax-false)))
  (command "vbastmt" "activedocument.close false"))

;;-----
(vl-load-com)
(defun c:Example_Close()
    ;; すべての図面を閉じるサンプル
    (setq acadObj (vlax-get-acad-object))
    (setq curDoc (vla-get-ActiveDocument acadObj))
    (setq docs (vla-get-Documents acadObj))

    ;; すべての図面を変更を破棄して閉じる
    (vlax-for doc docs
        (if (/= (vla-get-Name doc) (vla-get-Name curDoc))
	    (progn
	        (alert (strcat "Closing " (vla-get-Name doc) " file."))
                (vla-Close doc :vlax-false)
	    )
        )
    )
)

関連事項