CAD开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

AutoCAD 2024 开发者帮助

关于操作表达式和回调 (DCL)

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

关于操作表达式和回调 (DCL)

选择对话框中的某个磁贴并通过调用该函数将 AutoLISP 表达式分配给该磁贴时,将执行操作。action_tile

这称为操作表达式。在操作表达式中,您经常需要访问 DCL 文件中的属性。和 函数提供此功能。get_tileget_attr

  • get_attr 函数检索 DCL 文件中的用户定义属性。
  • get_tile函数根据用户对磁贴的输入获取磁贴的当前运行时值。

操作表达式必须在调用之后和调用之前定义。new_dialogstart_dialog

与用户如何选择磁贴或修改磁贴内容有关的信息将作为回调返回到操作表达式。在大多数情况下,对话框中的每个活动磁贴都可以生成回调。与反应器一样,响应回调的动作表达式通常称为回调函数。此函数应对关联的磁贴执行有效性检查,并应更新对话框中与磁贴值相关的信息。更新对话框可能包括发出错误消息、禁用其他磁贴以及在编辑框或列表框中显示相应的文本。

只有“确定”按钮(或其等效按钮)应查询磁贴值,以永久保存用户最终选择的设置。换言之,您应该更新与“确定”按钮的回调中的切片值关联的变量,而不是单个切片的回调。如果在各个磁贴回调中更新了永久变量,则如果用户选择“取消”按钮,则无法重置值。如果 OK 按钮的回调检测到错误,它应该显示错误消息并将焦点返回到错误的磁贴上;它不应退出对话框。

当对话框包含多个处理方式相似的磁贴时,可以方便地将这些磁贴与单个回调函数相关联。在用户单击“确定”之前,不提交用户更改的原则仍然适用。

除了调用之外,还有两种方法可以定义操作。您可以在调用 时为整个对话框定义默认操作,也可以使用磁贴的属性定义操作。这些定义动作及其发生顺序的替代方法。action_tilenew_dialogaction


路过

雷人

握手

鲜花

鸡蛋

最新评论

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

GMT+8, 2024-12-15 11:34

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部