sekarr24 发表于 2022-7-6 11:08:46

自定义用户输入

嗨,朋友们。,
 
我需要有人指导我创建自定义项
 
细节。
 
我经常使用一些输入值,如800750等。。。在执行move、copy…(移动、复制…)等命令期间。。。,
 
我需要自定义,无论何时需要距离值,都必须显示带有预定义值(800750)的按钮或对话框。当我单击按钮时,这些值必须传输到命令提示符。
 
希望有人回答并感谢。
 
当做
 
塞卡尔

MSasu 发表于 2022-7-6 11:22:38

可以创建一个新按钮,并在宏字段输入“870”-这将发送到命令提示符,该值;不幸的是,当使用该按钮时,控制与当前位置相关的鼠标位置(因此位移方向)将非常棘手。
 
当做

sekarr24 发表于 2022-7-6 11:41:33

你好
 
谢谢你的帮助。我们可以通过输入@800来处理方向移动

MSasu 发表于 2022-7-6 11:56:32

你是对的,但这种方法必须为每个位移乘以所需方向制作一个按钮:
 
2个位移(750、800)x 4个方向(0、90、180、270)=8个按钮
 
当做

alanjt 发表于 2022-7-6 12:04:48

使用所有选项创建一个右键菜单,然后在CUI编辑器中的“鼠标选项”下,将新创建的菜单添加到按住Shift键并单击或按住Ctrl键并单击的菜单中(以不用于访问OSnap菜单的菜单为准)。
 
这还将为您提供在LISP例程中使用它的选项。

alanjt 发表于 2022-7-6 12:17:48

只是为了好玩,这里有一个选择。在我用红色标记的地方设置你的点值(我只是随便举几个例子)。
 
弹出窗口将显示在光标位置。
 
(defun c:PV (/ valLst val)
;; Point Values From List
;; DosLib Required
;; Alan J. Thompson, 05.21.10
(vl-load-com)

(setq valLst '((800 750) (0 0) (10 10)))

(if (zerop (logand 1 (getvar 'cmdactive)))
   (alert "Must be called transparently!")
   (if (or dos_popupmenu
         (alert "DosLib required. Please download and install.")
         (progn (command) (command "_.browser" "http://www.en.na.mcneel.com/doslib.htm"))
       )
   (if (setq val (dos_popupmenu (mapcar (function vl-princ-to-string) valLst)))
       (nth val valLst)
   )
   )
)
)
 
页: [1]
查看完整版本: 自定义用户输入