Danke rpor66,
Ich habe den Code neu geschrieben:
Code:
(setq xlist nil)
(Repeat 1000)
(und (= ed3 nil) (= edx 0)
(setq cont (1+ cont))
(setq contuno (1+ contuno)
(setq title1 (strcat "select the point name " (itoa cont))))
(setq ed3 (entsel (strcat "\n" Titel1)
(Sectq und 1 ed)
(wenn (= ed3 nil)----------------------------------------------------------------------------------------------------------------------------------------------------------------
(Progn)
(setq limitstr (vl-string-trim "konturstr))
(setq fp1 (open "c:\\\\autocadsupport\\\\\\\\\\\\stringa.dat" "a"))
(writ-line Konturstr fp1)
(Schließe fp)
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
(write-line sumpoints fp2)
(Schließe fp)
(startapp "c:\autocadsupporto\liberty\\sino7.exe "c:\\autocadsupport\\\liberty\\\sino7.tkn")
(seq control1 nil)
(while (= Steuerung 1 nil)
(setq control1 (findfile "c:\\\autocadsupporto\dati\\\ reply.dat"))
;
(Sectq Antwort nil)
(while)
(setq fp1 (open "c:\\\autocadsupporto\dati\risposta.dat" "r"))
(setq codcolor (read-line fp1))
(setq codlinea (read-line fp1))
(setq Antwort (read-line fp1))
(Schließe fp)
;
(princ "\n")
(princ)
(princ reply)
(princ "\n")
(falls)
(Progn)
(seq gespeichert (strcat "contorno gespeichert (" (itoa (- contuno 1)) ") Punkte"))
(alert gespeichert)
(Auszug)
;
;
(falls)
(setq cont (1- cont))
(setq contuno (1- contuno)
;
;
; falls-----------------------------------------------------------------------------------------------------------------------------------------------------------
;
(princ "\n")
> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > >
(princ ed1)
(princ "\n")
(setq list (entget (car ed1) '("group"))
(setq xlist (assoc -3 list)
(wenn (= xlist nil)
(Progn)
(Alert "der ausgewählte Artikel ist nicht geeignet, keine umfangreichen Daten sind zugeordnet!")
(setq cont (1- cont))
;
(Progn)
(setq txtdata (car))
(setq string)
(setq nomex (cdr)
(Satzart des Punktes (nth 2 txtdata))
(Satzanteil (cdr (nth 3 txtdata)))
(setq ecef (nth 4 txtdata))
(setq gaussboaga (cdr 5 txtdata))
(Setq Controllerstz (nth 6 txtdata)))
(setq controlpt (nth 7 txtdata)))
(setq pos1 (vl-string-search "("namex 1))
(setq Punktname (substr nomex 1 (- pos1 1)))
(falls (>) 0;
(Progn)
(Siehe Fall 1)
(Urteil)
(falls = Punkt 1);
(Progn)
(setq gb1 gaussboaga)
(setq Randstr Punktname)
;
(progn; Auswahl über die erste
(Setq gb3 gb2); Kopie gb2 in gb3
(setq gb4 gaussboaga)
(Befehl "_line" gb3 gb4 ")
(Befehl "_change" "_last" "_p" "_layer" "rot"")
(Setq gb3 gb4)
(setq limitstr (strcat limitstr "|" name))
(Setq-Summepunkte (Summepunkte "-" gaussboaga))
;
;
;
;
(falls = (Rem cont 2) 0);
(Progn)
(Abschnitt 2)
(Urteil)
(falls = cont 2);
(Progn)
(setq gb2 gaussboaga)
(Befehl "_line" gb1 gb2")
(Befehl "_change" "_last" "_p" "_layer" "rot"")
(setq limitstr (strcat limitstr "|" name))
(Setq-Summepunkte (Summepunkte "-" gaussboaga))
;
(Progn)
(setq gb2 gaussboaga)
(Befehl "_line" gb2 gb3 ")
(Befehl "_change" "_last" "_p" "_layer" "rot"")
(setq limitstr (strcat limitstr "|" name))
(Setq-Summepunkte (Summepunkte "-" gaussboaga))
;
;
;
;
(princ "\n")
(prinz contornostr > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > >
(Princ Konturstr)
(princ "\n")
(if (= cont 10)
(Progn)
(setq fp1 (open "c:\\\\autocadsupport\\\\\\\\\\\\stringa.dat" "a"))
(writ-line Konturstr fp1)
(Schließe fp)
(setq cont 0)
(setq limitstr ")
;
;
(Sectq und 1 nil)
(Sectq ed3 nil)
(setq intlibretto 1); syno7. exe schreibt im Buchpreis
(intestinal setq (- contune 1) 2))
(Abschnitte 0)
(princ "\n")
> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > >
(princ intgraphic)
(princ "\n")
;
;
;
jetzt wird die Eingabe von : (if (= xlist nil)
aber der Fall von xlist = nil , startet eine Schleife, die ich nicht beenden kann, wenn nicht durch die Operation von Windows 10.
ist immer frei: "Das ausgewählte Element ist nicht geeignet, keine umfangreichen Daten sind zugeordnet!"
weiter.
Ich glaube nicht, dass die Lösung gültig ist, weil diese Kontrolle ausgeübt wird, falls Sie ein grafisches Element wie eine Zeile auswählen, aber nicht, wenn die Auswahl einen Text betrifft.
Zusammenfassung:
- die Auswahl muss ein Textelement umfassen, das erweiterte Daten hat.
- jede Auswahl muss abgelehnt werden.
- bei falscher Auswahl muss die gewählte Schleife nach der Fehlermeldung fortgesetzt werden.
- im Falle der Auswahl nichts, die Schleife stoppt und die Frage wird gestellt.
Ich denke, die Kontrolle sollte sofort auf den ausgewählten Punkt (ed3) ausgeübt werden.
Wie?
Danke.