CAD开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

AutoLISP 开发指南

关于处理滑块 (DCL)

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

摘要: 处理来自滑块的操作和回调时,应用程序应检查它与回调一起接收的原因代码。这不是必需的,但这是一个好主意,因为它可以减少处理。

处理来自滑块的操作和回调时,应用程序应检查它与回调一起接收的原因代码。这不是必需的,但这是一个好主意,因为它可以减少处理。

当滑块上的增量边界越过时,将发生回调。例如,如果滑块的最小值为 0,最大值为 10,大小增量均为 1,则当用户从滑块的一端遍历到另一端时,将发出 10 次回调。

以下函数显示了处理滑块的函数的基本方案。它是从与滑块磁贴关联的操作表达式调用的。函数使用的磁贴以十进制形式显示滑块的当前值。通常,此类磁贴也是一个编辑框,它使用户可以选择操作滑块或直接输入其值。如果用户在其中输入值,则编辑框回调应更新滑块的值,如下所示:slider_infoslider_info

(action_tile
  "myslider"
  "(slider_action $value $reason)"
)

(action_tile
  "slider_info"
  "(ebox_action $value $reason)"
)

.
.
.

(defun slider_action(val why)
  (if (or (= why 2) (= why 1))   ; Check reason code.
    (set_tile "slider_info" val) ; Show interim result.
  )
)

(defun ebox_action(val why)
  (if (or (= why 2) (= why 1))   ; Check reason code.
    (set_tile "myslider" val)    ; Show interim result.
  )
)

路过

雷人

握手

鲜花

鸡蛋

最新评论

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

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

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部