Detach メソッド(ActiveX)

図面から外部参照をアタッチ解除します。

サポートされているプラットフォーム: Windows のみ

構文と要素

VBA:

object.Detach
object

タイプ: Block

このメソッドが適用されるオブジェクト。

戻り値(RetVal)

戻り値はありません。

注意

外部参照のアタッチを解除すると、現在の図面からの外部参照が除去されます。外部参照のコピーはすべて削除され、外部参照の定義も削除されます。外部参照に従属するシンボル テーブルの(画層や線種等の)情報は、すべて現在の図面から削除されます。

他の外部参照を含む外部参照のアタッチを解除することはできません。

VBA:

Sub Example_Detach()
    On Error GoTo ERRORHANDLER
                          
    ' Define external reference to be inserted
    Dim xrefHome As AcadBlock
    Dim xrefInserted As AcadExternalReference
    Dim insertionPnt(0 To 2) As Double
    Dim PathName As String
    insertionPnt(0) = 1
    insertionPnt(1) = 1
    insertionPnt(2) = 0
    PathName = "c:/AutoCAD/sample/City map.dwg"
    
    ' Add the external reference
    Set xrefInserted = ThisDrawing.ModelSpace. _
            AttachExternalReference(PathName, "XREF_IMAGE", _
            insertionPnt, 1, 1, 1, 0, False)
    ZoomAll
    MsgBox "The external reference is attached."
    
    ' Detach the external reference definition
    Dim name As String
    name = xrefInserted.name
    ThisDrawing.Blocks.Item(name).Detach
    MsgBox "The external reference is detached."
    Exit Sub

ERRORHANDLER:
    MsgBox Err.Description
End Sub

Visual LISP:

(vl-load-com)
(defun c:Example_Detach()
    (setq acadObj (vlax-get-acad-object))
    (setq doc (vla-get-ActiveDocument acadObj))
  
    ;; Define external reference to be inserted
    (setq insertionPnt (vlax-3d-point 1 1 0)
          pathName (findfile ".\\Sample\\Sheet Sets\\Architectural\\Res\\STAIR1.dwg"))
    
    ;; Add the external reference
    (setq modelSpace (vla-get-ModelSpace doc))  
    (setq xrefInserted (vla-AttachExternalReference modelSpace pathName "XREF_IMAGE" insertionPnt 1 1 1 0 :vlax-false))
    (vla-ZoomAll acadObj)
  
    (alert "The external reference is attached.")
    
    ;; Detach the external reference definition
    (setq name (vla-get-Name xrefInserted))
    (vla-Detach (vla-Item (vla-get-Blocks doc) name))
    (alert "The external reference is detached.")
)