CAD开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

AutoCAD 文档中心

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

2023-1-8 09:07| 发布者: admin| 查看: 266| 评论: 0|来自: AutoCAD

摘要: 当选择对话框中的某个磁贴并通过调用 action_tile功能。

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

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

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

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

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

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

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

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


路过

雷人

握手

鲜花

鸡蛋

最新评论

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

GMT+8, 2024-5-19 13:09

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部