明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2047|回复: 7

[OpenDCL] 【请教】控件的每次动作,都会强制回车

[复制链接]
发表于 2013-12-27 13:15:41 | 显示全部楼层 |阅读模式
控件的每次动作
都会强制回车
导致命令行原有的提示
不断的上移
有办法让ODCL不这样吗
 楼主| 发表于 2013-12-27 17:53:03 | 显示全部楼层
再问两个问题

1.
绘图区的任意一点
如何换算成DCL时的坐标


2.
点取odcl中的文字控件后
希望先关闭对话框
然后选择一个图元
但奇怪的是
CAD会报错“无法重复进入LISP”
但是还是会执行选图元的代码

下面是程序中的相关代码
(defun c:DLGGXZ_FORM1_规格_ONCLICKED (/)
(dcl_Form_Close DLGGXZ_Form1)  ;;关闭对话框
(setq a (entsel))  ;;选择图元,此时会有错误提示,但仍可以继续执行后续代码
.....
)
应该怎么处理来回避这个问题?
 楼主| 发表于 2013-12-27 20:58:51 | 显示全部楼层
上面第2个问题
采用dcl_Form_Hide可以避免


现在更改了程序流程
设定鼠标离开对话框后
执行选图元代码
新问题来了


如果鼠标移进对话框
又没有点击控件
那么鼠标指针移出来以后
选图元代码没有问题

可如果点击了控件
鼠标指针移出去以后
虽然还是可选图元
但是选择图元的拾取小窗口
会“定”在对话框的旁边或某个位置
不随鼠标移动

另外如果不选图元再次移入对话框内
再移出时又报“不能重复进入lisp”错误

唉,odcl确实强大
要用好也真心不容易
求高手指点
 楼主| 发表于 2013-12-27 21:09:36 | 显示全部楼层
知道为啥鼠标会定住了
窗体的“保持焦点”选项取消打钩就OK了

那现在就是"无法重复进入lisp"错误这个问题了
 楼主| 发表于 2013-12-27 21:28:10 | 显示全部楼层
把*error*函数重定义
再在鼠标移入对话框事件前加上^C^C
勉强可以接受

不知还有更好的办法没有
 楼主| 发表于 2013-12-27 21:30:53 | 显示全部楼层
控件事件加上^C^C
是无提示运行
上面说的方式会有两个“*取消*”
怎么看都不是那么爽啊
 楼主| 发表于 2013-12-27 21:37:28 | 显示全部楼层
不管怎么样
我的第一个无模式对话框
调试接近成功

移出对话框可自动执行程序
这个功能太棒了
ohyeah
收工回家休息
发表于 2014-11-20 01:39:48 | 显示全部楼层
能说说说以下这个具体如何操作吗?

把*error*函数重定义
再在鼠标移入对话框事件前加上^C^C

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

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-18 08:39 , Processed in 0.171296 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表