CAD开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

AutoLISP 开发指南

将特定对话框加载到内存中

2023-1-5 07:50| 发布者: admin| 查看: 300| 评论: 0|来自: AutoCAD

前面指出,单个 DCL 文件可能包含多个对话框定义。使用对话框的下一步是指定要显示的对话框定义。以下代码对此进行了演示:

(if (and dialogLoaded
        (not (new_dialog "gp_mainDialog" dcl_id))
     ) ;_ end of and
    (progn
      ;; There's a problem...
      (princ "\nCannot show dialog gp_mainDialog")
      (setq dialogShow nil)
    ) ;_ end of progn
) ;_ end of if

请注意如何使用函数来测试对话框是否已加载以及调用是否成功。如果在函数调用中计算了多个表达式,则后续表达式的计算将以计算结果的第一个表达式终止。在这种情况下,如果 theflag 是(意味着上一节中的加载函数失败),Visual LISP 不会尝试执行该函数。andnew_dialog and nildialogLoadednilnew_dialog

请注意,该代码还考虑了某些内容可能无法正常工作的可能性,如果是这种情况,则将变量设置为这种情况。dialogShownil

该函数只是将对话框加载到内存中,它不会显示它。该函数将显示对话框。所有对话框初始化(如设置磁贴值、为列表框创建图像或列表以及将操作与特定磁贴关联)都必须在调用之后和调用之前进行。new_dialogstart_dialognew_dialogstart_dialog


路过

雷人

握手

鲜花

鸡蛋

最新评论

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

GMT+8, 2024-5-19 11:55

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部