CAD开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

ActiveX 开发指南

相关分类

加载方式 (ActiveX)

2023-1-4 05:35| 发布者: admin| 查看: 532| 评论: 0|来自: AutoCAD

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

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

支持的平台:仅窗口

签名 - 线型

工 务 局:

object.Load LineTypeName, FileName
对象

类型:线型

此方法适用的对象。

行类型名称

访问:仅输入

类型:字符串

要加载的线型的名称。

文件名

访问:仅输入

类型:字符串

线型所在的文件的名称。

签名 - 菜单组

工 务 局:

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

类型:菜单组

此方法适用的对象。

菜单文件名

访问:仅输入

类型:字符串

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

基本菜单

访问:仅输入;自选

类型:变体

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

返回值 (RetVal) - 线型

无返回值。

返回值 (RetVal) - 菜单组

类型:菜单组

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

言论

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

菜单组:AutoCAD 搜索具有指定菜单文件名a.cuix扩展名的自定义文件。

例子

工 务 局:

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."))
        )
    ) 
)

路过

雷人

握手

鲜花

鸡蛋

最新评论

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

GMT+8, 2024-5-11 21:01

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部