CAD开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

AutoLISP 开发指南

关于在回调时更改模式和值 (DCL)

2023-1-6 09:32| 发布者: admin| 查看: 495| 评论: 0|来自: AutoCAD

摘要: 在回调时,可以检查磁贴的值。如有必要,您可以使用 再次set_tile以修改此值。

在回调时,可以检查磁贴的值。如有必要,可以再次使用 修改此值。set_tile

在回调期间,您还可以用于更改磁贴的状态。下表显示了mode参数的值:mode_tilemode_tile

mode_tile的模式代码

价值

描述

0

启用磁贴

1

禁用磁贴

2

将焦点设置为磁贴

3

选择编辑框内容

4

打开或关闭翻转图像突出显示

用于禁用具有当前焦点的磁贴时,必须再次调用以将焦点设置为其他磁贴(在大多数情况下,为对话框中的下一个制表位)。否则,焦点将保留在禁用的磁贴上,这是不合逻辑的,可能会导致错误。mode_tilemode_tile

磁贴禁用自身的一个很好的例子是一系列对话框页面,用户通过选择“下一个”或“上一个”按钮逐步浏览这些页面。当用户在倒数下一页上选择“下一步”时,该按钮将被禁用。在第二页上选择“上一步”后也会发生同样的事情。在这两种情况下,代码都必须禁用所选按钮,然后将焦点设置为其他磁贴。

假设调用的磁贴是控制调用的群集的切换开关。关闭切换开关后,群集中的切片处于非活动状态,不应进行修改。在这种情况下,您可以为切换定义以下操作。(请注意 \“ 控制字符的使用,它允许在参数中使用引号。group_ongroupaction_tile

(action_tile "group_on" "(mode_tile \"group\" (- 1 (atoi $value)))")

动作表达式中的 (-) 和调用设置函数的模式参数。由于切换开关在关闭时为 0,在打开时为 1,因此减法会反转其值,模式控制是否启用群集。您可以使用函数检查磁贴以外的属性。例如,您可能想要检索名为“pressme”的按钮的标签:subtractionatoimode_tileget_attr

(get_attr "pressme" "label")

该函数以字符串形式返回指定属性的值。get_attr

注意:如果使用检索属性,它将获取保存在 DCL 文件中的属性(磁贴的初始值)。但是,该函数获取磁贴的当前运行时值。这两个值不一定相同。get_attrvaluevalueget_tile
注意:如果使用检索属性,它将获取保存在 DCL 文件中的属性(磁贴的初始值)。但是,该函数获取磁贴的当前运行时值。这两个值不一定相同。get_attrvaluevalueget_tile

路过

雷人

握手

鲜花

鸡蛋

最新评论

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

GMT+8, 2024-5-19 14:38

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部