wgij007 发表于 2020-1-10 09:05:29

请问有办法在这段代码基础上加一个窗口吗



请问有办法在这段代码基础上加一个窗口,原来这个贴粘不好操作,谢谢

这段代码是在论坛的找的,不好意思忘了那个大侠的作品:lol

(defun c:cz ( / EN ENT GETPT I MAXP MINP PT S1 SS STXT)
      (setvar "cmdecho" 0)
      (command "undo" "be")
      (setq stxt (getstring "\n输入查找的文字 :"))
      (if (and
                              (= stxt "")
                              (setq s1 (entsel "\n选择要查找的文字 :"))
                              (setq ent (entget(car s1)))
                              (= (cdr(assoc 0 ent)) "TEXT,MTEXT")
                        )
                (setq stxt (cdr(assoc 1 (entget(car s1)))))
      )
      (if (and
                              (setq ss (ssget (list
                                                                                                      '(0 . "TEXT,MTEXT")
                                                                                                      '(-4 . "<or")
                                                                                                      (cons 1 (strcat "*" (strcase stxt) "*"))
                                                                                                      (cons 1 (strcat "*" (strcase stxt t) "*"))
                                                                                                      '(-4 . "or>")
                                                                                                )
                                                               )
                              )
                              (setq getpt(getpoint "\n指定线的起点:"))
                        )
                (progn
                        (setq i 0)
                        (repeat (sslength ss)
                              (setq en (ssname ss i))
                              (vla-getboundingbox (vlax-ename->vla-object en) 'minp 'maxp)
                              (setq
                                        minp (vlax-safearray->list minp)
                                        maxp (vlax-safearray->list maxp)
                              )
                              (setq pt (polar minp (angle minp maxp) (/ (distance minp maxp) 2)))
                              (entmake (list
                                                                         '(0 . "LINE")
                                                                         (cons 8 "FindText")
                                                                         (cons 10 getpt)
                                                                         (cons 11 pt)
                                                                         (cons 62 6)
                                                               )
                              )
                              (setq i (1+ i))
                        )
                        (princ)
                )
      )
      (command "undo" "end")
      (setvar "CMDECHO" 1)
      (princ)
)



669423907 发表于 2020-1-10 09:05:30

这个应该适合你
http://bbs.mjtd.com/thread-175396-1-1.html

wgij007 发表于 2020-1-10 18:51:17

669423907 发表于 2020-1-10 09:05
这个应该适合你
http://bbs.mjtd.com/thread-175396-1-1.html

太感谢了,就是我想要的
页: [1]
查看完整版本: 请问有办法在这段代码基础上加一个窗口吗