明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1787|回复: 7

工具栏的保存问题,请高手帮忙

[复制链接]
发表于 2006-3-16 21:11:00 | 显示全部楼层 |阅读模式

作了一个工具栏,其中包括一个mnu文件和一个dll位图资源文件,问题如下:

如将这两个文件放置于cad安装目录下,或放在support目录下,或放在support目录下的新建文件夹(比如userbar)下,用menuload命令可以加载,但重启cad后工具栏没有被保存下来,而放在其他的目录(比如d:\yang)下,却可以保存,不知是怎么回事,还请高手们指点迷津。

 楼主| 发表于 2006-3-16 22:00:00 | 显示全部楼层
这么多高手在线,给点提示也好啊
发表于 2006-3-17 07:54:00 | 显示全部楼层

你可直接修改ACAD.mnu文件,把你新建的菜单内容加进去。再执行menu加载acad.mnu文件。

 楼主| 发表于 2006-3-17 18:16:00 | 显示全部楼层
多谢提示,但不知道上边的现象是怎么回事,是有什么系统变量在起作用吗?
 楼主| 发表于 2006-3-18 12:50:00 | 显示全部楼层

修改acad.mnu的确是个办法,但这样的话在别的计算机上用时就需要覆盖原来的acad.mnu。初步想在acad.lsp文件中添加(command "menuload" "mybar"),这样在每次启动cad时就可以加载,但帮助文件说cad还没有启动完好像不能执行command命令,安这个思路看有什么办法,比如s::startup函数是个什么函数呢?不知能不能用上。

发表于 2006-3-18 14:34:00 | 显示全部楼层
如果是2000以上版本,建议只保留和修改.mns菜单文件。
 楼主| 发表于 2006-3-19 13:18:00 | 显示全部楼层

仔细看了帮助文件关于启动后自动执行的部分,由于加载工具栏必须用到menuload命令,而在acad.lsp运行时图形初始化尚未完成,故不能将语句(command "menuload")添加在acad.lsp中,但可以在acad.lsp中定义s::startup()函数,该函数是在图形初始化后立即执行,比如我用menul.lsp加载mybar.mnu,执行的命令是c:userbar,acad.lsp文件可以采用如下写法:

(load "c:\\program files\\autocad r14\\......menul.lsp)

(defun s::startup()

(c:userbar)

)

这样就可以达到启动cad后即加载工具栏的目的.

 楼主| 发表于 2006-3-19 13:36:00 | 显示全部楼层

少了个引号. 另外我想,凡是启动后需要立即执行的程序,都应该可以写到s::startup()函数中。

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

本版积分规则

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

GMT+8, 2024-9-29 00:43 , Processed in 0.168479 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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