尝试:
- (setq thisdrawing (vla-get-activedocument (vlax-get-acad-object))
- ssSelections (ssget (list (cons 0 "TEXT,MTEXT")))
- intCount 0 ;Start with first selection.
- )
- (if(ssmemb entSelection ssSelections)(ssdel entSelection ssSelections))
- ; Don't delete First selection if selected again.
- (repeat (sslength ssSelections)
- (vla-startundomark thisdrawing)
- (setq entSelection (ssname ssSelections intCOunt)
- objSelection (vlax-ename->vla-object entSelection)
- intCount (1+ intCount) ;increment to next selection.
- )
- (if(= btwtxt " ")
- (while(vl-string-search "\\P" (vla-get-textstring objSelection))
- (vla-put-textstring objSelection
- (vl-string-subst " " "\\P" (vla-get-textstring objSelection))
- )
- )
- )
- (vla-put-textstring objSelection1
- (strcat
- (vla-get-textstring objSelection1)
- ; btwtxt ; Space for text or new line for mtext
- (vla-get-textstring objSelection)
- )
- )
- ; (vla-delete objSelection) ; Delete added text object
- (vla-endundomark thisdrawing)
- )
- (princ)
- )
|