GetExtensionDictionary メソッド(ActiveX)

オブジェクトに関連付けられた拡張ディクショナリを取得します。

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

構文と要素

VBA:

RetVal = object.GetExtensionDictionary
object

タイプ: すべての図形オブジェクトAttributeReferenceBlockDictionaryDimensionDimStyleGroupLayerLayoutLinetypeMaterialMLeaderStylePlotConfigurationRegisteredApplicationTableStyleTextStyleUCSViewViewportXRecord

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

戻り値(RetVal)

タイプ: Dictionary

オブジェクトの拡張ディクショナリ

注意

オブジェクトが拡張ディクショナリを持たない場合、メソッドはオブジェクトに対して新しい拡張ディクショナリを作成し、戻り値に返します。

HasExtensionDictionary プロパティを使用して、拡張ディクショナリを持っているかどうかを調べることができます。

VBA:

Sub Example_GetExtensionDictionary()
    ' This example creates a Circle object in model space and
    ' adds a new Extension Dictionary to the Circle object
    
    Dim EDictionary As AcadDictionary
    Dim circleObj As AcadCircle
    Dim centerPoint(0 To 2) As Double
    Dim radius As Double
    
    ' Define the Circle object
    centerPoint(0) = 0: centerPoint(1) = 0: centerPoint(2) = 0
    radius = 5#
    
    ' Create the Circle object in model space
    Set circleObj = ThisDrawing.ModelSpace.AddCircle(centerPoint, radius)

    ThisDrawing.Application.ZoomAll
    
    MsgBox "Circle object Extension Dictionary state before: " & circleObj.HasExtensionDictionary
    
    ' Create an Extension Dictionary for the new Circle
    Set EDictionary = circleObj.GetExtensionDictionary
    
    MsgBox "Circle object Extension Dictionary state after: " & circleObj.HasExtensionDictionary
End Sub

Visual LISP:

(vl-load-com)
(defun c:Example_GetExtensionDictionary()
    ;; This example creates a Circle object in model space and
    ;; adds a new Extension Dictionary to the Circle object
    (setq acadObj (vlax-get-acad-object))
    (setq doc (vla-get-ActiveDocument acadObj))
    
    ;; Define the Circle object
    (setq centerPoint (vlax-3d-point 0 0 0)
          radius 5)
    
    ;; Create the Circle object in model space
    (setq modelSpace (vla-get-ModelSpace doc))
    (setq circleObj (vla-AddCircle modelSpace centerPoint radius))

    (vla-ZoomAll acadObj)
    
    (alert (strcat "Circle object Extension Dictionary state before: " (if (= (vla-get-HasExtensionDictionary circleObj) :vlax-true) "True" "False")))
    
    ;; Create an Extension Dictionary for the new Circle
    (setq EDictionary (vla-GetExtensionDictionary circleObj))

    (alert (strcat "Circle object Extension Dictionary state after: " (if (= (vla-get-HasExtensionDictionary circleObj) :vlax-true) "True" "False")))
)