乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 38|回复: 10

[编程交流] 关于默认值的问题。

[复制链接]

24

主题

111

帖子

87

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
120
发表于 2022-7-6 14:59:59 | 显示全部楼层 |阅读模式
这就是我所拥有的,但是当例程运行时,除了我的默认距离值之外,一切都正常。为什么会这样?
  1. (setq dist (getreal "\nWhat is the Offset Distance? [.083/0.95] <0.83> :"))

我只需要将0.83设为默认值,这样就可以消除击键,直到我必须使用不同的数字。
回复

使用道具 举报

0

主题

269

帖子

279

银币

限制会员

铜币
-4
发表于 2022-7-6 15:10:48 | 显示全部楼层
如果用户点击“回车”,dist将为“零”。因此,在该行之后使用:
(if(非dist)(setq dist 0.83))
回复

使用道具 举报

26

主题

1495

帖子

20

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
118
发表于 2022-7-6 15:15:47 | 显示全部楼层
在调用(getdist)之前,您可能还需要研究调用(initget)。它可以强制一个正的非零值(偏移量需要这个值)-大卫
回复

使用道具 举报

24

主题

111

帖子

87

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
120
发表于 2022-7-6 15:19:49 | 显示全部楼层
initget在那里已经就绪,设置为1 2 4 64,我尝试了(if(not dist)(setq dist 0.83))
仍然返回需要一个数值错误
回复

使用道具 举报

4

主题

327

帖子

324

银币

初来乍到

Rank: 1

铜币
19
发表于 2022-7-6 15:27:10 | 显示全部楼层
请张贴您的initget是如何设置的
回复

使用道具 举报

4

主题

327

帖子

324

银币

初来乍到

Rank: 1

铜币
19
发表于 2022-7-6 15:31:40 | 显示全部楼层
抱歉,我发布到quick,你的initget不应该有1,因为它
防止用户通过只输入ENTER来响应请求。因此,它会循环,直到得到响应或推送逃逸。
回复

使用道具 举报

26

主题

1495

帖子

20

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
118
发表于 2022-7-6 15:40:21 | 显示全部楼层
您需要将1放入(initget)。它强制输入-大卫
回复

使用道具 举报

24

主题

111

帖子

87

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
120
发表于 2022-7-6 15:47:07 | 显示全部楼层
看,思考总是让我变得内敛。谢谢大家!但是,既然你在这里并且知道的比我多,那么你如何让它在下次调用命令时保持其先前的值呢?
回复

使用道具 举报

4

主题

327

帖子

324

银币

初来乍到

Rank: 1

铜币
19
发表于 2022-7-6 15:48:37 | 显示全部楼层
保留值可以通过以下两种方式之一实现
[列表]
  • 将变量设置为全局变量,使其在AutoCAD会话仍处于打开状态时保持活动状态,但在AutoCAD关闭时将失去其值。
    将值写入文件并让程序访问它(这是首选)
  • 回复

    使用道具 举报

    4

    主题

    940

    帖子

    961

    银币

    初来乍到

    Rank: 1

    铜币
    12
    发表于 2022-7-6 15:59:48 | 显示全部楼层
    这里有一个方法
    1. (defun test (/ dist)
    2. (if (null *dist*)
    3. (setq *dist* 0.83)
    4. )
    5. (setq dist (getreal (strcat "\n What is the offset distance?: <" (rtos *dist* 2 2) ">: "))
    6. )
    7. (if (not dist)
    8. (setq dist *dist*)
    9. (setq *dist* dist)
    10. )
    11. (alert (strcat "\nThe value of *dist* is " (rtos *dist* 2 2)
    12.         "\nThe value or dist is " (rtos dist 2 2)))
    13. )
    回复

    使用道具 举报

    发表回复

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    • 微信公众平台

    • 扫描访问手机版

    • 点击图片下载手机App

    QQ|关于我们|小黑屋|乐筑天下 繁体中文

    GMT+8, 2025-3-4 21:32 , Processed in 0.532063 second(s), 83 queries .

    © 2020-2025 乐筑天下

    联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表