- 积分
- 18847
- 明经币
- 个
- 注册时间
- 2002-9-19
- 在线时间
- 小时
- 威望
-
- 金钱
- 个
- 贡献
-
- 激情
-
|
本帖最后由 lijiao 于 2024-8-14 17:44 编辑
前段时间发了个另类的菜单,总是觉得不满意,翻来覆去睡不着觉,经过反复折腾,现在总算过得去了
附件解压后是csmenu.dll文件,启动acad后用netload命令加载(适用于acad2013以上版本),加载后形成一个函数csmenu
函数名称: csmenu
调用方式: (csmenu [str1] [str2] [str3] [str4] [str5] [str6] [str7] [str8] [intMode] [realSize])
参数说明: []表示可选项,可以有,也可以没有
str1到str8为字符串,是显示在菜单上的文字
intMode为整数,可以在参数的任何位置,取值为0~4,表示菜单类型,缺省时为0
0表示圆形菜单,最多可以接受8个字符串
1表示下半圆菜单,最多可以接受4个字符串
2表示左半圆菜单,最多可以接受4个字符串
3表示上半圆菜单,最多可以接受4个字符串
4表示右半圆菜单,最多可以接受4个字符串
realSize为实数,可以在参数的任何位置,表示菜单的大小,以像素为单位,缺省时为350
功能: 在屏幕中产生一个选项菜单,可以是圆形,也可以是扇形,菜单的中心就在当前鼠标的位置
退出方式: 一共有三种退出方式
1.鼠标滑过菜单项,返回所滑过的菜单序号,以0开始
2.回车,返回0
3.按ESC键,返回nil
使用场景举例: 1.需要获取关键字时,可以使用圆形菜单
2.现在软件的工具条太多,加上自己开发的各种插件,几乎把屏幕占满,绘图区所剩无几,使用笔记本的情况就更为严重,这时就可以使用扇形 菜单,或者半圆形菜单,比如有4个工具按钮,分别是line,pline,spline,mline,你就可以把这四个按钮去掉,重新定义一个叫MyLine的按钮,命令就叫MylLine,按钮位置就放在屏幕右边停靠,接下来就定义如下的命令MyLine,加载后,我们点击MyLine按钮时,在鼠标处就会出现一个左半圆的菜单,鼠标滑过菜单时,菜单消失,同时启动相应的命令,这样就可以用一个按钮代替四个按钮,减少工具栏对屏幕的占用率,扩大绘图区
- (defun c:myline ( / item)
- (setq item (csmenu "直线" "多段线" "样条线" "双线" 2 ))
- (cond
- ((= item 0) (command "line"))
- ((= item 1) (command "pline"))
- ((= item 2) (command "spline"))
- ((= item 3) (command "mline"))
- )
- )
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?注册
x
|