| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
| PNY WIRD VON NVIDIA ZUM HÄNDLER DES JAHRES GEWÄHLT, eine Pressemitteilung
|
Autor
|
Thema: Benutzerabfrage (2576 mal gelesen)
|
chris888 Mitglied Technischer Zeichner
Beiträge: 141 Registriert: 11.11.2010 AutoCAD 2002, 2005, 2008, 09, 10, 11
|
erstellt am: 29. Apr. 2011 14:44 <-- editieren / zitieren --> Unities abgeben:
Hallo!! Frage: Wie kann ich eine Benutzerabfrage in einer Lisp erstellen? Also zum beispiel eine Variable "a" definieren der dann mein eingegebener wert zugewiesen wird und dieser dann verwendet wird. Bsp: Ich will ein Objekt Varia(ieren) also größe ändern. Einmal will ich das mit F= 2 und einmal mit F= 3,78. Ich will nun vor der Objektwahl den faktor angeben und dann auswählen... Und bitte ich weiß das der befehl Varia das umgekehrt selber macht -.- ES IST JA NUR EIN BEISPIEL. Es geht ums Prinzip, Wie ich eine LISP-Benutzerabfrage erstelle. Hoffe auf hilfe. Danke chris Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Steff179 Mitglied Geomatiker
Beiträge: 266 Registriert: 09.08.2007 AutoCAD 2014
|
erstellt am: 29. Apr. 2011 15:16 <-- editieren / zitieren --> Unities abgeben: Nur für chris888
Hallo Chris Da hast du mehrere möglichkeiten. ein paar Beispiele: (setq A (getstring "\Bitte ein Wort eingeben: ")) (setq A (getint "\Bitte eine Ganzzahl eingeben: ")) (setq A (getreal "\Bitte eine reale Zahl eingeben: ")) Du kannst das ganze auch noch beschränken wenn du willst. (initget 1 "2.00 3.75") (setq A (getkword "\nBitte eine Auswahl treffen [2.00 /3.75]: ")) Bei dieser Variante musst du aber beachten das du den wert nachher wider in eine reale Zahl umwandelst, da der wert ein String ist.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
chris888 Mitglied Technischer Zeichner
Beiträge: 141 Registriert: 11.11.2010 AutoCAD 2002, 2005, 2008, 09, 10, 11
|
erstellt am: 30. Apr. 2011 13:46 <-- editieren / zitieren --> Unities abgeben:
|
Gordonsky Mitglied Bergvermessungstechniker
Beiträge: 37 Registriert: 21.10.2008 Civil3D 2017
|
erstellt am: 07. Jul. 2011 07:58 <-- editieren / zitieren --> Unities abgeben: Nur für chris888
und jetzt nur mal so gefragt... gibt es auch sowas das man schon ein wert festlegen kann der standartmäßig ausgewählt is wenn man einfach nur enter drückt? oder muss man sich das mit bedingungen selbst basteln? wie hier im beipiel... um wieviel wollen sie die größe ändern [2/3.78] <2>: Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13529 Registriert: 30.11.2003 .
|
erstellt am: 07. Jul. 2011 08:02 <-- editieren / zitieren --> Unities abgeben: Nur für chris888
|
Theodor Schoenwald Ehrenmitglied
Beiträge: 1672 Registriert: 16.04.2002
|
erstellt am: 07. Jul. 2011 21:24 <-- editieren / zitieren --> Unities abgeben: Nur für chris888
Hallo Thomas, ich habe neulich ein paar Worte über schnippige Antworten und Gegenantworten geschrieben. Deine Antwort zeigt genau das Gegenteil, Deine Erklärung über Abfragemöglichkeiten ist einfach, übersichtlich und doch umfassend, das gefällt mir. Gruß Theodor [Diese Nachricht wurde von Theodor Schoenwald am 07. Jul. 2011 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
joern bosse Ehrenmitglied Dipl.-Ing. Vermessung
Beiträge: 1766 Registriert: 11.10.2004 Window 11 ACAD 2021 CIVIL 2021 BricsCAD ab V14 11th Gen Intel(R) Core(TM) i7-1165G7 @ 2.80GHz 2.80 GHz 32.0GB RAM NVIDIA GeForce MX450<P>
|
erstellt am: 08. Jul. 2011 06:57 <-- editieren / zitieren --> Unities abgeben: Nur für chris888
Hallo Gordonsky, Du kannst auch die die Vorgabe in eine globale Variable setzen, und diese nach jeder Eingabe aktualisieren, dann hast Du immer den zuletzt verwendeten Wert als Vorgabe. Code:
(defun c:abfrage ( / zahl) (if (not Zahl$$Global) (setq Zahl$$Global 3.123)) (if (not(setq zahl (getreal (strcat "\nBitte Zahl eingeben<" (rtos Zahl$$Global 2 3)">:")))) (setq zahl Zahl$$Global) (setq Zahl$$Global zahl)) (alert (strcat "Der Wert der Zahl lautet: " (rtos zahl 2 3))))
------------------ viele Grüße Jörn http://www.bosse-engineering.com Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |