Load メソッド(ActiveX)

カスタマイズ(CUIx)ファイルからメニュー グループを、またはライブラリ(LIN)ファイルから線種の定義をロードします。

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

構文と要素 - Linetypes

VBA:

object.Load LineTypeName, FileName
object

タイプ: Linetypes

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

LineTypeName

アクセス: 入力のみ

タイプ: 文字列

ロードする線種の名前。

FileName

アクセス: 入力のみ

タイプ: 文字列

ロードする線種があるファイルの名前。

構文と要素 - MenuGroups

VBA:

RetVal = object.Load(MenuFileName [,BaseMenu])
object

タイプ: MenuGroups

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

MenuFileName

アクセス: 入力のみ

タイプ: 文字列

ロードするカスタマイズ(CUIx)ファイルの名前。

BaseMenu

アクセス: 入力のみ; オプション

タイプ: バリアント型

このパラメータを True に設定した場合、メニューグループは、ベース メニューとしてロードされます(AutoCAD の MENU[メニュー設定]コマンドに類似)。このパラメータを省略すると、メニュー グループは、部分メニューとしてロードされます(AutoCAD の CUILOAD[CUI ロード]コマンドに類似)。

戻り値(RetVal) - Linetypes

戻り値はありません。

戻り値(RetVal) - MenuGroups

タイプ: MenuGroup

カスタマイズ(CUIx)ファイルをロードした結果として作成される、MenuGroup オブジェクト。

注意

Linetypes: Add メソッドを使用すれば、線種を作成し、これを Linetypes コレクション オブジェクトに追加することができますが、このメソッドでは、既定のプロパティでのみオブジェクトが作成されます。ActiveX オートメーションの今回のリリースでは、線種プロパティを編集することができないため、このメソッドを使用して既存の線種を図面にロードします。

MenuGroups: AutoCAD は、指定された MenuFileName および .cuix 拡張子のカスタマイズ ファイルを検索します。

VBA:

Sub Example_Load()
    ' This example attempts to load the linetype "CENTER" from
    ' the acad.lin file. If the linetype already exists, then
    ' a message is displayed.
    
    Dim linetypeName As String
    linetypeName = "CENTER"
    
    ' Load "CENTER" line type from acad.lin file
    On Error Resume Next    ' trap any load errors
    ThisDrawing.Linetypes.Load linetypeName, "acad.lin"
    
    ' If the name already exists, then notify user
    If Err.Description = "Duplicate record name" Then
        MsgBox "A line type named '" & linetypeName & "' already exists.", , "Load Example"
    End If
    
End Sub

Visual LISP:

(vl-load-com)
(defun c:Example_Load()
    ;; This example attempts to load the linetype "CENTER" from
    ;; the acad.lin file. If the linetype already exists, then
    ;; a message is displayed.
    (setq acadObj (vlax-get-acad-object))
    (setq doc (vla-get-ActiveDocument acadObj))
  
    (setq linetypeName "CENTER")
    
    ;; Load "CENTER" line type from acad.lin file
    (setq err (vl-catch-all-apply 'vla-Load (list (vla-get-Linetypes doc) linetypeName "acad.lin")))
    
    ;; If the name already exists, then notify user
    (if (vl-catch-all-error-p err)
        (if (= (vl-catch-all-error-message err) "Automation Error. Duplicate record name")
            (alert (strcat "A line type named '" linetypeName "' already exists."))
        )
    ) 
)