| | |
 | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| | |
 | NVIDIA GTC Paris und ISC High Performance-Konferenz 2025, eine Pressemitteilung
|
|
Autor
|
Thema: Aufruf einer c:Funktion mit Übergabe von Parametern (579 / mal gelesen)
|
archi.archi Mitglied
 
 Beiträge: 109 Registriert: 08.10.2010 Windows 11 AutoCAD 2024 Revit 2024
|
erstellt am: 23. Feb. 2024 15:33 <-- editieren / zitieren --> Unities abgeben:         
Hallo Miteinander, eine c:Funktion mit Benutzereingabe z.B.
Code: (defun c:MitBenutzereingabe ( / prg) (initget "J N") ;Muster setzen (setq prg (getkword "Eingabe J/<N>: " )) )
wird direkt aufgerufen und soll aber auch in einer anderen c:Funktion "silent" aufgerufen werden. Kann diesem "silent"-Aufruf auch die Benutzereingabe "J" mitgegeben werden? Bisher leider kein Ergebnis mit:
Code:
(c:MitBenutzereingabe J) oder (command (c:MitBenutzereingabe) "J" "")
Oder MUSS ein eigener Übergabeparameter in der c:MitBenutzereigabe definiert werden, durch den die Benutzereingabe dann übersprungen wird? https://ww3.cad.de/foren/ubb/Forum145/HTML/002099.shtml#000003 Beste Grüße archi ------------------
 Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadffm Moderator 良い精神
       

 Beiträge: 22689 Registriert: 03.06.2002 Alles
|
erstellt am: 23. Feb. 2024 15:41 <-- editieren / zitieren --> Unities abgeben:          Nur für archi.archi
Funktionen welche ala Autocad Befehl definiert werden c: sind nucht dafür gemacht Argumente entgegenzunehmen. Du brauchst eine funktion ohne c: Dein c: -Funktion ruft dann einfach die ohne-c: auf und du kannst (meinefunk "j") benutzen. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
archi.archi Mitglied
 
 Beiträge: 109 Registriert: 08.10.2010 Windows 11 AutoCAD 2024 Revit 2024
|
erstellt am: 23. Feb. 2024 16:04 <-- editieren / zitieren --> Unities abgeben:         
Hallo Sebastian, hui: schneller geantwortet, als geschrieben - vielen Dank! Code:
(defun Mit1 ( / prg) (initget "J N") ;Muster setzen (setq prg (getkword "Eingabe J/<N>: " )) (alert "Info") )(defun c:T ( / ) (Mit1 "J") )
ergibt: "; Fehler: Zu viele Argumente" Wo liegt mein Fehler? Beste Grüße archi ------------------
 Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadffm Moderator 良い精神
       

 Beiträge: 22689 Registriert: 03.06.2002 Alles
|
erstellt am: 23. Feb. 2024 19:47 <-- editieren / zitieren --> Unities abgeben:          Nur für archi.archi
Keine Globale Variable deklariert, also wird kein Argument erwartet. Du sendest ein Argument und damit sind es zuviele Argumente. Ich vermute ich bin schuld mit meiner Antwort. ; EDITIERT - mit Handy tippen hat Tücken (defun Mit1 ( val / prg) ; irgendein Code, der den Benutzer - in deinem Fall - nichts mehr fragt (cond ((= val "J")(alert "Yes")) ((= val "N")(alert "No")) ) ) (defun c:Mit1 () ; deine zwei Zeilen Code prüfe, bzw. kommentiere ich nicht, hier geht es ja um etwas anderes zur Zeit (initget "J N") ;Muster setzen (setq prg (getkword "Eingabe J/<N>: " )) (Mit1 prg) ) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |

| |
archi.archi Mitglied
 
 Beiträge: 109 Registriert: 08.10.2010 Windows 11 AutoCAD 2024 Revit 2024
|
erstellt am: 25. Feb. 2024 22:27 <-- editieren / zitieren --> Unities abgeben:         
Hallo Sebastian, heisst also: die vorliegende c:Funktion mit Benutzerabfrage und Befehlen teilen in c:Funktion mit nur der Benutzerabfrage und Funktion mit den Befehlen. Wir haben verstanden. Vielen Dank und bis zum nächsten Problem. Beste Grüße archi ------------------
 Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |