CAD开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

AutoCAD 2018 开发者帮助

测试 VLX 文件中私有数据的使用 (AutoLISP/Visual LISP IDE)

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

测试 VLX 文件中私有数据的使用 (AutoLISP/Visual LISP IDE)

VLX 文件可以配置为跨不同命名空间访问数据。

  1. 在 Visual LISP 控制台窗口中输入以下命令:
    (vlax-ldata-put "mydict" "mykey" "Mumbo Dumbo")
    "Mumbo Dumbo"
    
    (vlax-ldata-get "mydict" "mykey")
    "Mumbo Dumbo"
  2. 在文件中输入以下代码,然后使用 Make Application 从文件生成 VLX。使用“创建应用程序”向导的“专家”模式,然后选择“编译选项”选项卡上的“单独命名空间”选项。
    (vl-doc-export 'ldataput)
    (vl-doc-export 'ldataget)
    (vl-doc-export 'ldataget-nilt)
    
    (defun ldataput ()
      (princ "This is a test of putting private ldata ")
      (vlax-ldata-put "mydict" "mykey" "Mine! Mine! " T)
    )
    
    (defun ldataget ()
      (vlax-ldata-get "mydict" "mykey")
    )
    
    (defun ldataget-nilt ()
      (vlax-ldata-get "mydict" "mykey" nil T)
    )
  3. 加载 VLX 文件。
  4. 运行以保存私有数据:ldataput
    (ldataput)
    This is a test of putting private ldata

    参考代码定义:此函数存储一个包含“Mine!我的!ldataput

  5. 运行以检索 LISP 数据:ldataget
    (ldataget)
    "Mumbo Dumbo"

    请注意,返回的数据不是 存储的数据。这是因为在对 的调用中没有指定私有参数。因此,检索到的数据是通过在步骤 1 中发出的数据集。ldatagetldataputldatagetvlax-ldata-getldatagetvlax-ldata-put

    (ldataget-nilt)
    "Mine! Mine!"
  6. 运行以检索 LISP 数据:ldataget-nilt
    (ldataget-nilt)
    "Mine! Mine!"

    这一次返回 保存的私有数据,因为在其对 的调用中指定了私有参数。ldataputldataget-niltvlax-ldata-get

  7. 在控制台提示符下,发出用于检索私有数据的相同调用:ldataget-nilt
    (vlax-ldata-get "mydict" "mykey" nil T)
    "Mumbo Dumbo"

    在单独的命名空间 VLX 之外发出私有参数时,将忽略该参数。如果指定的字典密钥存在非私有数据(如本例所示),则将检索该数据。vlax-ldata-get


路过

雷人

握手

鲜花

鸡蛋

最新评论

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

GMT+8, 2025-1-19 06:52

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部