dz-2011 发表于 2013-8-11 12:58:02

使用 dimcontinue 命今完后,怎样右键直接退出!

(defun c:12 ()
(setvar "cmdecho" 0)
(command "dimcontinue")
(princ))   

   这是以前自已写的lsp,有点不好就是动态标注后,随时右键退出,可是事实上右键后,还再提示"选择连续标注:"还要右键一次,
要的就是动态标注后右键直接退出了,不要再右键一次,本来对我用处不大,想想以前对此研究好久业余水平还是解决不了!

请G版与各版主帮解决下,本想等明经出书后买本自已看看搞定的!

ZZXXQQ 发表于 2013-8-11 12:58:03

改了一下,只是没有动态的效果。
(defun c:12 ()
(setvar "CMDECHO" 0)
(command "DIMCONTINUE")
( while (> (getvar "CMDACTIVE") 0) ;命令期间如果按下右健时结束命令
(setq g (grread nil 2 0))
;(princ "\n") (princ g)
(cond
   ((and (= (car g) 2) (member (cadr g) '(13 32))) (command "" ""))
   ((and (= (car g) 11) (= (cadr g) 0)) (command "" ""))
((= (car g) 3)(command (cadr g)))
(T (command PAUSE))
)
)
(princ)
)

crazylsp 发表于 2013-8-12 23:45:24

;改了一点,不知道可不可以
(defun c:12 ()
(setvar "cmdecho" 0)
(command "dimcontinue")
( while (> (getvar 'CmdActive) 0) ;命令期间如果按下右健时结束命令
   (setq g(grread t 5 0))
   (command pause)
   (if (member (car g) (list 25 11 ) )
       (setvar 'CmdActive 0)
   )
)
(exit) ;并退出
(princ))   

crazylsp 发表于 2013-8-13 01:40:55


用VBA的右键事件测试可以的
Private Sub AcadDocument_BeginRightClick(ByVal PickPoint As Variant)
   Dim WshShell
   Set WshShell = CreateObject("WScript.Shell")
   WshShell.SendKeys "{esc}"
   WshShell.SendKeys "{esc}"
End Sub

dz-2011 发表于 2013-8-13 21:34:13

ZZXXQQ 发表于 2013-8-13 08:01 static/image/common/back.gif
改了一下,只是没有动态的效果。
(defun c:12 ()
(setvar "CMDECHO" 0)


我还用04版,想要的就是动态标注,然后退出时少按一次右键就好了,我也不知是不是很难,能不能实现了,不管怎么说还是要感谢版主!

lincctw_ccl 发表于 2013-8-15 22:59:05

沒用過DIMCONTINUE這命令
剛才試用了程序
發現還蠻方便的
页: [1]
查看完整版本: 使用 dimcontinue 命今完后,怎样右键直接退出!