|
AutoLisp : Verschachteln von Dialogfenstern
Brischke am 06.10.2004 um 11:30 Uhr (0)
Hallo Snafu, Herzlich Willkommen auf CAD.DE Wenn jetzt das 2 Dialogfenster nicht funktioniert, warum schickst du dann hier nur das erste? Ich denke dein Problem lässt sich am ehesten lösen, wenn du hier die Dateien zur Verfügung stellst. Es kostet eben doch einiges an Zeit, bis man sich eine Testumgebung aufgebaut hätte. Bei Fragen ... Grüße Holger ------------------ Holger Brischke (defun - Lisp over night! AutoLISP-Programmierung für AutoCAD Da weiß man, wann man s hat!
|
In das Form AutoLisp wechseln |
|
AutoLisp : Verschachteln von Dialogfenstern
Brischke am 06.10.2004 um 12:00 Uhr (0)
Hallo snafu, habe reingesehen, folgendes: Du hast ein Diafenster geöffnet, öffnest ein 2tes dazu, beendest das 2te und versuchst dann, dass erste ist noch offen, irgendwelche commands abzuschicken. Das geht nicht, so lange noch eines offen ist. Du solltest dir unbedingt jedoch auch mal das Variablenhandling Lokal/Global näher ansehen. Bei dir sind alle global, was im Hinblick auf die dcl_id zu Problemen führen wird! (defun c:NAME (/ lokal_Variablen) (defun NAME (parameter / lokal_Variablen) Du kannst dir a ...
|
In das Form AutoLisp wechseln |
|
AutoLisp : Verschachteln von Dialogfenstern
Brischke am 06.10.2004 um 12:23 Uhr (0)
Hallo snafu, sorry für meinen Ausdruck, aber was fummelst du denn am (start_dialog) rum? Das hat damit überhaupt nichts zu tun. Wenn der erste Dialog direkt zugehen soll, wenn du etwas gewählt hast, dann ist die Herangehensweise ganz anders. folgendes schreibe ich hier aus dem Hut, ist also ungetestet und somit auch nicht 1:1 zu übernehmen. Code: (action_tile KEY_1 (done_dialog 2) ) (action_tile KEY_2 (done_dialog 3) ) (action_tile KEY_3 (done_dialog 4) ) ... (setq ns (start_dialog)) (unload_di ...
|
In das Form AutoLisp wechseln |
|
AutoLisp : Verschachteln von Dialogfenstern
Brischke am 06.10.2004 um 14:20 Uhr (0)
Zitat: Original erstellt von snafu: (action_tile KEY_1 (done_dialog 2) ) = was bedeutet die 2 , ist das der Dialog den ich beenden möchte? Die 2 ist nicht mit einem Flag zu verwechseln. Das ist einfach nur ein Wert, genau wie die 3 oder 4. Der Dialog ist mit dem (start_dialog) gestartet. Von da an kannst du auch nicht mehr debuggen, da hat ACAD, die Oberhand über die zuvor geladenen (action_tiles ..) Der Dialog wird dann irgendwann über ein (done_dialog #) beendet. Womit, also welcher Butto ...
|
In das Form AutoLisp wechseln |
|
AutoLisp : VLX und upload
Brischke am 06.10.2004 um 14:28 Uhr (0)
Zitat: Original erstellt von AsSchu: @Brischke ich wollte das nicht automatisch laden lassen; sondern nur wenn der Button aktiviert wird ähmm sorry, aber genau das macht dieser Eintrag in einer mnl-Datei. Wenn ein Button gedrückt wird, dann prüft Acad, ob es für diesen Befehl eine autoload-Anweisung gibt und lädt, sofern noch nicht geschehen, die angegebene VLX/LSP-Datei. Einfacher gehts in meinen Augen nicht. Du brauchst nicht an irgendwelchen Orig-Acad-Dateien rumbasteln, auch wenn die dazu geda ...
|
In das Form AutoLisp wechseln |
|
AutoLisp : autom. Zeichnungspfad ändern
Brischke am 06.10.2004 um 15:01 Uhr (0)
Hallo Jürgen, Anderer Ansatz: _qsave und dann ein vl-copy. Dann geschieht das auch unbemerkt für den Anwender und er zeichnet nicht einfach in der Sicherungskopie rum. Bei Fragen ... Grüße Holger ------------------ Holger Brischke (defun - Lisp over night! AutoLISP-Programmierung für AutoCAD Da weiß man, wann man s hat!
|
In das Form AutoLisp wechseln |
|
AutoLisp : Verschachteln von Dialogfenstern
Brischke am 06.10.2004 um 15:04 Uhr (0)
Hallo snafu, hole dir den Code in den VLisp-Editor, setze mit [F9] einen Haltepunkt in die (cond-Zeile und schau dir dann mal den Wert der Variablen ns im Überwachungsfenster an. Du hast auch (setq ns (start_dialog))stehen? Grüße Holger ------------------ Holger Brischke (defun - Lisp over night! AutoLISP-Programmierung für AutoCAD Da weiß man, wann man s hat!
|
In das Form AutoLisp wechseln |
|
AutoLisp : autom. Zeichnungspfad ändern
Brischke am 06.10.2004 um 15:19 Uhr (0)
... genau .. und dann noch erweitert um die Funktionen, dass die XRefs gebunden werden und der Dateiname um das Datum und Uhrzeit ergänzt werden. So hat man immer auch den Planstand zur Hand, der irgendwann mal geplottet wurde. Um dass dann allerdings noch händeln zu können wäre ein gleichzeitiger Eintrag in eine Datenbank sehr hilfreich. Wenn das hier jetzt so klingt, als nehme ich den Beiterag nicht ernst, das wäre falsch. Ich meine es ernst, das wäre doch mal eine Herausforderung! Grüße Holger --------- ...
|
In das Form AutoLisp wechseln |
|
AutoLisp : Layout-Registernamen umbennen
WolfgangGutke am 07.10.2004 um 15:18 Uhr (0)
Hallo, wie kann man via LISP den Namen eines Registers umbenennen ? VG Wolfgang
|
In das Form AutoLisp wechseln |
|
AutoLisp : Verschachteln von Dialogfenstern
Brischke am 07.10.2004 um 16:48 Uhr (0)
Hallo snafu, 0=Abbrechen 1=Ok Ich habe bewußt im Beispiel mit 2 angefangen. Grüße Holger ------------------ Holger Brischke (defun - Lisp over night! AutoLISP-Programmierung für AutoCAD Da weiß man, wann man s hat!
|
In das Form AutoLisp wechseln |
|
AutoLisp : Verschachteln von Dialogfenstern
Brischke am 08.10.2004 um 11:48 Uhr (0)
Hallo snafu, mit diesem Konstrukt sind die Dia-Fenster nicht mehr verschachtelt, sondern es kommt eines nach dem anderen. Somit besteht da keine Gefahr (aus dieser Richtung). ;-) Bei Fragen ... Grüße Holger ------------------ Holger Brischke (defun - Lisp over night! AutoLISP-Programmierung für AutoCAD Da weiß man, wann man s hat!
|
In das Form AutoLisp wechseln |
|
AutoLisp : Nachkommastellen bei größeren Zahlen
Frank88 am 11.10.2004 um 11:50 Uhr (0)
Hallo, wie stellt man es an, daß einem bei einer solchen Rechnung (+ 45678.123 0.1 0.01 0.001) 45678.2 der richtige Wert 45678,234 geliefert wird? Hintergrund ist, daß ich mit einem LISP-Programm aus einer Textdatei Koordinaten in mm auslesen und diese dann in m unwandeln und als Punkte ins Autocad laden will. (setq Y (/ mmWert 1000)) führt aber immer zu o.g. Problem: der mmWert 45678123 wird zu 45678.2 statt 45678.123! Ich hoffe verzweifelt auf Hilfe. Gruß, Frank P.S.: benutzte Versionen: R14 und ...2 ...
|
In das Form AutoLisp wechseln |
|
AutoLisp : Befehl Plot / Treiber SHPGL
Peter2 am 11.10.2004 um 18:24 Uhr (0)
Frage: Wie erstellst du den Plot? Anscheinend mit einem Script oder Lisp oder irgendetwas automatisches, oder? Anscheinend passen die Befehle des Scripts mit deinen aktuellen 2005-Konfigurationen nicht zusammen (Pfade etc.). Kann aber auch sein, dass in 2005 der Plotbefehl etwas anders abläuft als in 2002 und daher z.B. die Plotdatei aufgerufen wird, obwohl Acad etwas ganz anderes wissen will. Peter ------------------ Für jedes Problem gibt es eine einfache Lösung. Die ist aber meistens falsch. ;-)
|
In das Form AutoLisp wechseln |