lijiao 发表于 2024-8-14 17:38:05

圆形菜单

本帖最后由 lijiao 于 2024-8-14 17:44 编辑

前段时间发了个另类的菜单,总是觉得不满意,翻来覆去睡不着觉,经过反复折腾,现在总算过得去了


附件解压后是csmenu.dll文件,启动acad后用netload命令加载(适用于acad2013以上版本),加载后形成一个函数csmenu
函数名称:   csmenu
调用方式:   (csmenu )
参数说明:   []表示可选项,可以有,也可以没有
                   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"))
    )
)

lijiao 发表于 2024-8-14 17:56:08

下面是截图

圆形菜单

下半圆菜单

左半圆菜单

上半圆菜单

有半圆菜单

你有种再说一遍 发表于 2024-8-14 19:18:10

这个东西赫思不是有吗?
好像大家现在还喜欢用Quicker.

depgfdepgf 发表于 2024-8-15 12:42:11

本帖最后由 depgfdepgf 于 2024-8-15 13:28 编辑

大佬,菜单最好文字大小可以设置,菜单大小改到200,基本上文字看不到了,要是能设置多圈就更强大了

lijiao 发表于 2024-8-15 14:29:25

因为是滑动触发,不能用多圈,尺寸也不能过小,操作不方便

moranyuyan 发表于 2024-8-15 14:39:17

用netload加载后如何卸载?

tranque 发表于 2024-8-16 10:55:04

你有种再说一遍 发表于 2024-8-14 19:18
这个东西赫思不是有吗?
好像大家现在还喜欢用Quicker.

确实,quicker轮盘很多圈的

664571221 发表于 2024-8-17 18:16:05

你有种再说一遍 发表于 2024-8-14 19:18
这个东西赫思不是有吗?
好像大家现在还喜欢用Quicker.

确实主要quicker好用

lijiao 发表于 2024-8-21 14:48:27


这是圆形菜单的一个举例,可以节省屏幕空间.

cwgchen 发表于 2024-10-13 23:30:21

想要源码学习一下
页: [1] 2
查看完整版本: 圆形菜单