Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Lisp
  Wiederholung der ehemaligen Texteingabe

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte
Autor Thema:  Wiederholung der ehemaligen Texteingabe (418 mal gelesen)
Mario Scht
Mitglied



Sehen Sie sich das Profil von Mario Scht an!   Senden Sie eine Private Message an Mario Scht  Schreiben Sie einen Gästebucheintrag für Mario Scht

Beiträge: 156
Registriert: 14.11.2002

Win XP
ACAD 2007

erstellt am: 23. Apr. 2003 11:09    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo zusammen,

ich komme hier nicht weiter. Ich möchte, dass wenn nichts eingegeben wird (Space oder Enter) entweder der Vorgabetextstring oder der letzte eingegebene Textstring übernommen wird. 
Wenn beide Zeichen auch bereits strings sind, dann kann das so nicht funktionieren, dashalb habe ich es auch schon mal mit (if (= "" (.... versucht, aber auch ohne Erfolg.

Besten Dank für die Hilfe
Mario 

(if (not (type FLtyp))
      (setq FLtyp "HNF")
  )
  (if (not (setq FLtyp_H (getstring (strcat "\nFlächetyp: " FLtyp " ? : "))))
      (setq FLtyp_H FLtyp)
      (setq FLtyp FLtyp_H)
  )

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Brischke
Moderator
CAD on demand GmbH




Sehen Sie sich das Profil von Brischke an!   Senden Sie eine Private Message an Brischke  Schreiben Sie einen Gästebucheintrag für Brischke

Beiträge: 4171
Registriert: 17.05.2001

AutoCAD 20XX, defun-tools (d-tools.eu)

erstellt am: 23. Apr. 2003 11:38    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Mario Scht 10 Unities + Antwort hilfreich

Hallo Mario,

ich habe mal etwas umgestellt. Aus dem Hauptprogramm wird die Eingabe-SUB-aufgerufen. In der MAIN habe ich den Befehlsaufruf 2mal hintereinander, dass du siehst, dass der vorherige Wert übernommen wird.
Bei Fragen ...

Grüße Holger

Code:

(defun c:MAIN (/ Flt)
;...
(setq Flt (get_eingabe Flt)
Flt (get_eingabe Flt)
)
;...
)
(defun get_eingabe (Fltyp / antw)
(setq antw (getstring
(strcat "\nFlächetyp <" (if FLtyp
Fltyp
(setq Fltyp "HNF")
)
">:"
)
);getstring
)
(if (and
antw
(/= "" (VL-STRING-LEFT-TRIM " " antw))
)
(setq FLtyp antw)
)
Fltyp
)

------------------
Holger Brischke
CADlon - Lisp over night!
Neue Tool's im Free-&Download
Zugang zum Download schon gesichert?

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Mario Scht
Mitglied



Sehen Sie sich das Profil von Mario Scht an!   Senden Sie eine Private Message an Mario Scht  Schreiben Sie einen Gästebucheintrag für Mario Scht

Beiträge: 156
Registriert: 14.11.2002

Win XP
ACAD 2007

erstellt am: 23. Apr. 2003 13:21    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Holger,

vielen Dank für die schnelle Hilfe. Es funktioniert.

(VL-STRING-LEFT-TRIM " " ANTWORT) Was mach das genau (ich habe nur LT und entsprechende Fachliteratur ist noch in der Planung)

Grüße Mario

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Brischke
Moderator
CAD on demand GmbH




Sehen Sie sich das Profil von Brischke an!   Senden Sie eine Private Message an Brischke  Schreiben Sie einen Gästebucheintrag für Brischke

Beiträge: 4171
Registriert: 17.05.2001

AutoCAD 20XX, defun-tools (d-tools.eu)

erstellt am: 23. Apr. 2003 13:50    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Mario Scht 10 Unities + Antwort hilfreich

Das entfernt eventuelle Leerzeichen von Links.

Bei Fragen ...

Grüße Holger

------------------
Holger Brischke
CADlon - Lisp over night!
Neue Tool's im Free-&Download
Zugang zum Download schon gesichert?

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Mario Scht
Mitglied



Sehen Sie sich das Profil von Mario Scht an!   Senden Sie eine Private Message an Mario Scht  Schreiben Sie einen Gästebucheintrag für Mario Scht

Beiträge: 156
Registriert: 14.11.2002

Win XP
ACAD 2007

erstellt am: 28. Apr. 2003 12:04    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo,

noch 'ne Frage: Wie habe ich die erste Zeile zu verstehen, ohne Operant, was bewirkt diese in Worten ausgedrückt?

(if FLtyp Fltyp ; ?
(setq Fltyp "HNF"); WennZweig
)

Vielen Dank vorab.
Grüße Mario

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

benwisch
Mitglied
Bautechniker, CAD-Konstrukteur


Sehen Sie sich das Profil von benwisch an!   Senden Sie eine Private Message an benwisch  Schreiben Sie einen Gästebucheintrag für benwisch

Beiträge: 375
Registriert: 01.02.2001

erstellt am: 28. Apr. 2003 13:20    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Mario Scht 10 Unities + Antwort hilfreich

if var bedeutet, "hat die variable einen wert ?", also ungleich nil (nil=nix)
if var var bedeutet, wenn var einen wert hat, dann schreibe var (beachte strcat !)
wenn var keinen wert hat, also nil, dann die nächste zeile abarbeiten (setq ...)

[Diese Nachricht wurde von benwisch am 28. April 2003 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP



Konstrukteur Maschinen- und Anlagenbau (m/w/d)
Du möchtest deine Karriereentwicklung nicht dem Zufall überlassen? Dann gehe mit uns gezielt den nächsten Schritt. Dazu bringen wir bei FERCHAU als eine der führenden europäischen Plattformen für Technologie-Dienstleistungen die smartesten und innovativsten Köpfe mit Unternehmen verschiedenster Branchen zusammen. Wir suchen dich: als ambitionierte:n Mitarbeitende:n für einen unserer Kunden.

Anzeige ansehenMaschinenbau
andi2050
Mitglied



Sehen Sie sich das Profil von andi2050 an!   Senden Sie eine Private Message an andi2050  Schreiben Sie einen Gästebucheintrag für andi2050

Beiträge: 107
Registriert: 11.03.2003

erstellt am: 28. Apr. 2003 14:29    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Mario Scht 10 Unities + Antwort hilfreich

Hi Mario

Die IF-Funktion hat folgende Syntax:
(IF <Bedingung> <THEN-Argument> [<ELSE-Argument>])

<Bedingung> und <THEN-Argument> MÜSSEN vorhanden sein.
<ELSE-Argument> muß NICHT zwingend vorhanden sein.

Wenn die Auswertung der <Bedingung> NICHT 'nil ergibt, wird das <THEN-Argument> ausgewertet.
Wenn <Bedingung> 'nil ergibt, wird das <ELSE-Argument> (wenn vorhanden) ausgewertet.

Die IF-Funktion gibt immer den zuletzt ausgewerteten Ausdruck zurück.

In Deinem Fall sieht das dann folgendermaßen aus:

(if
;;;<Bedingung >[Prüfen, ob dem Symbol "Fltyp" ein Wert zugewiesen ist]
  FLtyp
;;; <THEN> [Wenn in Fltyp was 'drin' ist, dann dessen Inhalt zurückgeben]
  Fltyp
;;; <ELSE> [Wenn 'nil 'drin' ist, dann dem Symbol "HNF" zuweisen und dies zurückgeben]
  (setq Fltyp "HNF")
);if

Der von IF zurückgegebene Wert wird in dem Programm dann durch STRCAT mit zwei weiteren Strings 'zusammengepappt'.

Vielleicht ist es jetzt ein bisserl klarer...
Grüße
Andi

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz