CAD开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

AutoCAD 2022 开发者帮助

Load 方法 (ActiveX)

2024-5-18 18:44| 发布者: admin| 查看: 90| 评论: 0|原作者: admin|来自: AutoCAD

Load 方法 (ActiveX)

从自定义 (CUIx) 文件加载菜单组,或从库 (LIN) 文件加载线型定义。

支持的平台:仅限 Windows

签名 - 线型

VBA:

object.Load LineTypeName, FileName
对象

类型:线型

此方法应用到的对象。

LineTypeName

访问:仅输入

类型:字符串

要加载的线型的名称。

文件名

访问:仅输入

类型:字符串

线型所在的文件的名称。

签名 - MenuGroups

VBA:

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

类型:MenuGroups

此方法应用到的对象。

MenuFileName

访问:仅输入

类型:字符串

要加载的自定义 (CUIx) 文件的名称。

基本菜单

访问:仅输入;自选

类型:变体

如果此参数设置为 ,则菜单组将加载为基本菜单(类似于 AutoCAD MENU 命令)。如果省略此参数,则菜单组将加载为部分菜单(类似于 AutoCAD CUILOAD 命令)。True

返回值 (RetVal) - 线型

无返回值。

返回值 (RetVal) - MenuGroups

类型:MenuGroup

由于加载自定义 (CUIx) 文件而创建的对象。MenuGroup

言论

线型:尽管可以使用该方法创建线型并将其添加到集合对象中,但将仅使用默认属性创建该线型。由于无法使用此版本的 ActiveX 自动化编辑线型属性,因此请使用此方法将现有线型加载到图形中。LinetypesAdd

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

可视化 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."))
        )
    ) 
)

路过

雷人

握手

鲜花

鸡蛋

最新评论

QQ|Archiver|CAD开发者社区 ( 苏ICP备2022047690号-1   苏公网安备32011402011833)

GMT+8, 2024-12-15 22:28

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部