乐筑天下

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

[编程交流] 我能让“暂停”做出回应吗

[复制链接]

7

主题

24

帖子

17

银币

初来乍到

Rank: 1

铜币
35
发表于 2022-7-6 07:01:13 | 显示全部楼层 |阅读模式
首先是这个问题的背景:
在lisp函数中,我希望在循环中插入块,其中用户仅左键单击给定的插入点,循环应在鼠标右键单击或回车时结束。
实际插入如下所示:
... 一些stuf
(B继续时
(命令“插入”BN pause 1 1 0)
(setq B以某种方式继续)
)
... 还有一些东西
 
也许同样的事情可以通过不同的方法来实现,但我喜欢“插入”的视觉效果,在插入之前,块附着在十字准线上。
我还知道ESC键(或Cancel)将在暂停时中止lsp代码。
但为了保持应用程序的一致性,我更喜欢按ENTER键或鼠标右键。
问题是,是否有某种方法可以让“暂停”在回车时做出反应,从而中止“插入”并继续使用下面的lisp代码。
也欢迎其他方法。
 
希望有人能帮忙。
BR
卡斯滕
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-6 07:16:56 | 显示全部楼层
用户使用Enter或右键单击退出的唯一方法是使用getpoint功能:
然而,这当然会放弃使用INSERT命令时收到的预览。
 
出现此问题的原因是,当从AutoLISP程序调用INSERT命令时,INSERT命令会从程序中获取焦点,在INSERT命令完成之前,您无法从AutoLISP程序中与用户输入的命令交互。
 
然而,为了在用户按下Esc后继续进行程序评估,我建议使用以下方法:
这避免了在程序中合并错误处理程序(重新定义的*错误*函数)的需要。
回复

使用道具 举报

26

主题

1495

帖子

20

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
118
发表于 2022-7-6 07:39:27 | 显示全部楼层
您应该能够将右键单击定义为^C^C(取消/转义)。这是多年来右键单击的默认值。我仍然试图用它定义我的按钮菜单。
 
  1. 2

 
我猜今天你会用崔(不是我的那杯茶)
 
-大卫
回复

使用道具 举报

7

主题

24

帖子

17

银币

初来乍到

Rank: 1

铜币
35
发表于 2022-7-6 07:57:06 | 显示全部楼层
谢谢你的回复,大卫。
我自己也没有进入崔的世界。
可以将鼠标右键单击和回车键的重新定义限制为仅适用于特定的lisp函数吗(如果可以,我可以得到如何实现这一点的提示),还是更通用?
 
BR
卡斯滕
回复

使用道具 举报

26

主题

1495

帖子

20

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
118
发表于 2022-7-6 08:03:21 | 显示全部楼层
 
好问题!也许有人知道一种方法-大卫
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-10 10:51 , Processed in 0.362477 second(s), 62 queries .

© 2020-2025 乐筑天下

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