明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1275|回复: 17

[讨论] 中望CAD与autoCAD运行lisp效果/结果不同的函数--欢迎补充

[复制链接]
发表于 2025-3-20 16:59:53 | 显示全部楼层 |阅读模式
本帖最后由 wzg356 于 2025-3-21 00:41 编辑

我没用过中望,应坛友呼应,为了我的快选插件能在中望运行
昨天下载中望2025 调试插件,发现

1 ssget entsel getpoint 等输入函数提示/默认提示在中望CAD加入屏幕提示
提示带[.....]时屏幕提示自动截除[.....之后
例(entsel "XXXX[.....]")时,命令行为"XXXX[.....]" 屏幕提示为"XXXX"  
估计是避免与initget配合时提示字符串太长
这个无关好坏,编程时注意利用就行

2 initget 定义有时空格" "可以当关键字, 但:
(initget "  ")(entsel "ssss")在中望CAD运行时,回车/空格/右键没法返回" "
上例可利用" "关键字来区分”回车/空格/右键与空选“--中望CAD无法实现

3关于DCL
中望不识别控件属性vertical_margin=none;horizontal_margin=none;有无无变化
对控件名/值空格字符识别有偏差
dcl首次加载控件popup_list 已add_list的内容不显示--不是慢的问题,而是鼠标在dcl相应控件上空掠过才显示


4 、其他还有,一时没理清

欢迎大家补充




评分

参与人数 1明经币 +1 收起 理由
hubeiwdlue + 1 很给力!

查看全部评分

"觉得好,就打赏"
还没有人打赏,支持一下
回复

使用道具 举报

发表于 2025-3-21 00:23:52 | 显示全部楼层
是的,dcl对话框有问题,小菜的选择易,迷你的选择易之类的,都要鼠标掠过才显示,包括button按钮都是。很奇怪。
回复 支持 0 反对 1

使用道具 举报

 楼主| 发表于 2025-3-21 21:22:59 | 显示全部楼层
kozmosovia 发表于 2025-3-21 19:15
value=1的那个radio的key,就是get_tile上级盒子key获取的结果。
如果盒子里面有20个可选radio,找01要 ...

意思是radio盒子的key值value就是下一级key=1的key 名称?有机会试一下
回复 支持 1 反对 0

使用道具 举报

发表于 2025-3-21 11:18:15 | 显示全部楼层
本帖最后由 kozmosovia 于 2025-3-21 11:28 编辑

DCL

:dialog{ label = "填充矩形(V2025.03.20)"; : edit_box {label = "矩形宽度:";key = "dclwidth";value = "320";} : edit_box {label = "矩形高度:";key = "dclheight";value = "160";} : boxed_radio_row {key="mode"; : radio_button {label = "含区域边线";key = "radioN";value= "1";} : radio_button {label = "区域内部";key = "radioW";value= "0";}} : row { : button {key = "btnOK";label = "确定";is_default = true;} : button {key = "btnCancel";label = "取消";}}}
蓝色的可以不需要,启动DCL时执行(set_tile "mode" "radioN")就行

LISP
(set_tile "mode" "radioW")
.....
(action_tile "mode" "(setq mode $Value)")
.....
(setq mode (get_tile "mode"))
....
mode可以是"radioW"或"radioN"

整体代码里完全不需要对"radioW" "radioN"使用set_tile和action_tile. 设计的按钮越多,节省的代码越多。


回复 支持 1 反对 0

使用道具 举报

发表于 2025-3-20 19:29:21 | 显示全部楼层
运行lisp,中望和autoCAD是有出入,真比不上。
浩辰的出入更大。
有些很难移植。
中望2025输入自动完成功能也乱来,中望2024比它好。
回复 支持 反对

使用道具 举报

发表于 2025-3-21 01:50:25 来自手机 | 显示全部楼层
正在研究中望,之前autoCAD中的dcl运行没问题,但是在中望中dcl某些key值读不出来,返回的是nil。
回复 支持 反对

使用道具 举报

发表于 2025-3-21 01:53:04 来自手机 | 显示全部楼层
代码如下:大神有空帮我看看问题在哪里。填充矩形:dialog{ label = "填充矩形(V2025.03.20)"; : edit_box {label = "矩形宽度:";key = "dclwidth";value = "320";} : edit_box {label = "矩形高度:";key = "dclheight";value = "160";} : boxed_radio_row { : radio_button {label = "含区域边线";key = "radioN";value= "1";} : radio_button {label = "区域内部";key = "radioW";value= "0";}} : row { : button {key = "btnOK";label = "确定";is_default = true;} : button {key = "btnCancel";label = "取消";}}}  。以上在ai里面审核也是OK的,但是中望就是key值取不到
回复 支持 反对

使用道具 举报

发表于 2025-3-21 08:35:29 | 显示全部楼层
zgs378530220 发表于 2025-3-21 01:53
代码如下:大神有空帮我看看问题在哪里。填充矩形:dialog{ label = "填充矩形(V2025.03.20)"; : edit_box {l ...

你这个,ok cancel按钮写的有问题。另外不建议用中文做对话框名字。
: row {
        : button {
          key = \"accept\";
          label = \"确定\";
          is_default = true;
        }
        : button {
          key = \"cancel\";
          label = \"取消\";
          is_cancel = true;
        }
      }
回复 支持 反对

使用道具 举报

发表于 2025-3-21 10:46:02 | 显示全部楼层
zgs378530220 发表于 2025-3-21 01:53
代码如下:大神有空帮我看看问题在哪里。填充矩形:dialog{ label = "填充矩形(V2025.03.20)"; : edit_box {l ...

很多人其实不会用DCL里面的radio。
无论是radio的column还是row,都要给colume或者row一个key值,将来是通过这个key可以直接获取(get_tile)选中的在colume或者row下的radio_button,也可以set_tile赋值。直接跨过column还是row去获取radio_button的值是有漏洞的方式。
给column还是row添加key后,代码量会少很多。逻辑也更加清晰。
回复 支持 反对

使用道具 举报

发表于 2025-3-21 10:59:43 | 显示全部楼层
本帖最后由 hubeiwdlue 于 2025-3-21 11:07 编辑
kozmosovia 发表于 2025-3-21 10:46
很多人其实不会用DCL里面的radio。
无论是radio的column还是row,都要给colume或者row一个key值,将来是 ...

第一次看到这种方法,大神V5啊,能给个简单的例子吗?
回复 支持 反对

使用道具 举报

发表于 2025-3-21 11:37:34 | 显示全部楼层
2026的兼容好多了,但涉及三维模型的仍还有的问题
你试试看
中望CAD2026Beta下载通道:
https://www.zwsoft.cn/download
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-4-21 18:01 , Processed in 0.276303 second(s), 28 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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