以下是David建议的切换:
- (defun c:test (/ r g b Disp)
- (vl-load-com)
- ;; Cross Hair Toggle ~ Lee Mac ~ 24.01.10
- (setq r 255 g 0 b 0)
- (setq *acad (cond (*acad) ((vlax-get-acad-object)))
- Disp (vla-get-Display (vla-get-Preferences *acad)))
- (or OldSettings
- (setq OldSettings
- (cons (getvar 'CURSORSIZE)
- (vlax-variant-value
- (vlax-variant-change-type
- (vla-get-ModelCrossHairColor Disp) vlax-vbLong)))))
- (cond (*flag* (setvar 'CURSORSIZE (car OldSettings))
- (vla-put-ModelCrossHairColor Disp (cdr OldSettings))
- (setq *flag* nil))
- ((setq *flag* t)
- (setvar 'CURSORSIZE 3)
- (vla-put-ModelCrossHairColor Disp (+ r (* 255 g) (* 65536 b)))))
- (princ))
|