| |
| 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: Wie kann ich in Lisp ein Dialogfenster verhindern? (1022 mal gelesen)
|
jofae Mitglied
Beiträge: 2 Registriert: 24.08.2011
|
erstellt am: 08. Sep. 2011 14:54 <-- editieren / zitieren --> Unities abgeben:
Hallo, Ich möchte über ein Lisp verschiedene Blöcke auf einen anderen Layer legen. Das funktioniert mit AMLGMOVE auch wie gewünscht: AutoCAD Mechanical 2008; 1 Block heisst Blockname_1; Alles auf AM_* Layer (defun C:Tblock(/ A) (if(and(setq A (ssget "_x" '((0 . "INSERT")(2 . "Blockname_1")))) (>(sslength A)0) ) (progn (sssetfirst nil nil) (command "AMLGMOVE" A "" "test") ) ) ) Das Problem ist nur dass das Lisp immer wieder durch ein Dialogfenster unterbrochen wird: Blockreferenz Blockname_1 in der Auswahl gefunden. Möchten Sie auch die Blockdefinition auf die gewünschte Layergruppe legen? Schaltflächen: Ja; Ja alle; Nein; Nein alle; Abbrechen; Hilfe Da über der Befehlszeile keinerlei Interaktion möglich ist, kann ich die Option nicht über das Lisp eingeben. Keiner der Befehle CMDDIA, FILEDIA, ATTDIA und EXPERT führte zum Erfolg (nacheinander, nicht im Lisp versucht). Was mache ich falsch? Gruss Josef Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13527 Registriert: 30.11.2003 .
|
erstellt am: 08. Sep. 2011 15:30 <-- editieren / zitieren --> Unities abgeben: Nur für jofae
|
MARTINLE Mitglied Tischler
Beiträge: 485 Registriert: 18.10.2007 AUTOCAD 2016, MS Windows7, 64-bit
|
erstellt am: 08. Sep. 2011 15:36 <-- editieren / zitieren --> Unities abgeben: Nur für jofae
Hallo Josef! Hallo Thomas1 Geht das nicht?? Wenn ein Dialogfeld ja oder nein im laufenden lisp anfordert dann gleich nach dem Befehl diese Zeile eigeben. (while (/= (getvar "cmdactive") 0) (command "j") ) ; while
lg. Martin
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13527 Registriert: 30.11.2003 .
|
erstellt am: 08. Sep. 2011 15:46 <-- editieren / zitieren --> Unities abgeben: Nur für jofae
|
cadffm Moderator 良い精神
Beiträge: 22275 Registriert: 03.06.2002 Alles
|
erstellt am: 08. Sep. 2011 15:48 <-- editieren / zitieren --> Unities abgeben: Nur für jofae
|
MARTINLE Mitglied Tischler
Beiträge: 485 Registriert: 18.10.2007 AUTOCAD 2016, MS Windows7, 64-bit
|
erstellt am: 08. Sep. 2011 15:51 <-- editieren / zitieren --> Unities abgeben: Nur für jofae
|
MARTINLE Mitglied Tischler
Beiträge: 485 Registriert: 18.10.2007 AUTOCAD 2016, MS Windows7, 64-bit
|
erstellt am: 08. Sep. 2011 15:53 <-- editieren / zitieren --> Unities abgeben: Nur für jofae
|
jofae Mitglied
Beiträge: 2 Registriert: 24.08.2011
|
erstellt am: 08. Sep. 2011 17:27 <-- editieren / zitieren --> Unities abgeben:
Zitat: Original erstellt von CADmium: amlgmove ist als Dialog-Routine programmiert .. dafür gibt es keine Kommandozeilenversion. Wenn du es ohne Dialog haben willst, mußt du die Funktionalität nachprogrammieren.
Schade! Dann bringt mich vermutlich auch das VBA nicht weiter. Es würde mich schon interessieren wie ich die Funktionalität nachprogrammieren könnte. Leider habe ich keinen blassen Schimmer wie ich die Funktionen zusammenkriege. Gruss Josef Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |