- 积分
- 7474
- 明经币
- 个
- 注册时间
- 2006-8-3
- 在线时间
- 小时
- 威望
-
- 金钱
- 个
- 贡献
-
- 激情
-
|
本帖最后由 redcat 于 2011-11-17 21:39 编辑
- ;;;AutoCAD动态研究
- (defun c:test (/ gr code data)
- (defun *error* (inf)
- (setq inf (strcase inf t)) ;将出错信息转换为小写字符串
- (cond
- ((wcmatch inf "*break*,*cancel*,*exit*,*取消*,*中断*") ;|按了<Esc>键出错处理|;
- (princ "\n用户按了<Esc>强制退出\n")
- ;;; (mapcar 'setvar varlst var_old);还原系统变量
- )
- (t ;|其余错误处理|;
- (princ (strcat "\n" inf))
- ;;; (mapcar 'setvar varlst var_old);还原系统变量
- )
- ) ;_ 结束cond
- (vla-EndUndoMark (vla-get-ActiveDocument (vlax-get-acad-object)))
- (princ)
- ) ;_ 结束defun
- (while (progn
- (setq gr (grread t 15 0)
- code (car gr)
- data (cadr gr)
- ) ;_ 结束setq
- (cond
- ((= code 2) ;键盘区域
- (princ "\n您按了键盘区域:")
- (princ (vl-list->string(cdr gr)))
- )
- ((= code 3) ;鼠标左击
- (princ "\n鼠标左击点为:")
- (princ data)
- )
- ((= code 5) ;鼠标移动
- (princ "\n鼠标移动到:")
- (princ data)
- )
- ((or(= code 11) ;(getvar "SHORTCUTMENU")=0时,鼠标右击
- (= code 25)) ;(getvar "SHORTCUTMENU")≠0时,鼠标右击
- (princ "\n您右击了鼠标:")
- )
- (t)
- ) ;_ 结束cond
- t
- ) ;_ 结束progn
- ) ;_ 结束while
- ) ;_ 结束defun
|
|