colder发表于2007-12-28 7:55:00你是如何保证他只用了LISP*DCL做到的呢?是因为你有原码? 还是因为看到只有一个.VLX文件?.ODCL文件可以编译到.VLX文件当中的!
我没有源码,我说我证明是lisp写的,是这样做的,可能是我的证词不足吧. 1、我只加载了VLX文件,就得到这样的对话框,可以证明不是ARX函数写的。 2、我在使用时,有次发现对话框的页面上那个方形选择框,可以复选,就是说,同时两个都打钩。 3、如果是opendcl做的,没有必要加入那个复选框吧。下面贴个opendcl的类似对话框。 是的,opendcl的文件是可以加入到.VLX,但好像这个opendcl运行时,必需加载它的函数文件(openDCL.16.arx),这样说来,opendcl还是用ARX写的,我对opendcl不懂,请问,是这样吗? 是的,opendcl的文件是可以加入到.VLX,但好像这个opendcl运行时,必需加载它的函数文件(openDCL.16.arx),这样说来,opendcl还是用ARX写的,我对opendcl不懂,请问,是这样吗? 但我去查了,根本就没有加载别的任何外挂的ARX,请问这些可以证明是lisp写的吗? 我尝试过用类似的方法实现这个功能,就是把它分成三个对话框,如dcl1,dcl2,dcl3这三个对话框. 当购选第一个复选框时,加载第一个dcl1,点第二个复选框时,加载第二个dcl2..... 但这样不能做出分页对话框的效果,功能倒是可以实现.. 传个图看看... 我不是在此证明给大家看什么,只是想大家讨论,用autocad的dcl可以做分页对话框吗? 就算看到这个,我只能相信,是可以做的,就不知道用什么方法,用常规dcl定不行的。 如果不是看到论坛里,下面这个代码,呵呵,我还不知道lisp可以有这样的消息对话框。 我能力就这么一点点,所以啦,大家论坛吧。。。 ;;函数名:mc_PopupBox ;|函数功能:弹出可定时自动关闭的消息窗口 作者:明经通道mccad 参数:strText:消息窗口的文字内容 intWaitTime:弹出窗口显示的时间,按秒计算 strTitle:消息窗口的标题 intDispType:窗口显示的样式,包括按钮和图标,具体如下: 按钮类型 0. 显示“确定”按钮 1. 显示“确定”和“取消”按钮 2. 显示“终止”、“重试”和“忽略”按钮 3. 显示“是”、“否”和“取消”按钮 4. 显示“是”和“否”按钮 5. 显示“重试”和“取消”按钮 图标类型 16 显示停止标记图标 32 显示问号图标 48 显示感叹号图标 64 显示信息标记图标 返回值:指示用户所单击的按扭编号。若用户在 intWaitTime 秒之前不单击按扭,则 返回值为 -1 。 1. “确定”按扭 2. “取消”按扭 3. “终止”按扭 4. “重试”按扭 5. “忽略”按扭 6. “是”按扭 7. “否”按扭 示例 (defun c:mcbox() (mc_PopupBox "明经通道欢迎你" 2 "明经通道函数示例" 64) ) |; (defun mc_PopupBox (strText intWaitTime strTitle intDispType) (vlax-invoke-method (vlax-create-object "wscript.shell") 'Popup strText intWaitTime strTitle intDispType) ) |