| |
 | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
 | PNY präsentiert die PRO Elite™ High Endurance microSD-Flash-Speicherkarten für Videoüberwachung und kontinuierliche Aufzeichnung, eine Pressemitteilung
|
Autor
|
Thema: DCL / Text und width (1246 mal gelesen)
|
Bernd10 Mitglied
  
 Beiträge: 763 Registriert: 20.11.2003 Intel(R) Xeon(R) W-2123 CPU @ 3.60GHz 16 GB RAM Windows 10 Pro 64-bit AutoCAD Mechnical 2020 Deu
|
erstellt am: 10. Okt. 2006 11:03 <-- editieren / zitieren --> Unities abgeben:         
Hallo, ich habe das Problem, dass ich in einem DCL-Dialog die Länge eines bestimmten Text-Elements variabel gestalten möchte. Dazu gebe ich im DCL-Dialog beim Text-Element mit dem Key ct_frage_jna eine Breite von 80 an (siehe unten). ddfrage_jna : dialog { label = "Frage"; initial_focus = "accept"; // OK-Button spacer_1; : text { key = "ct_frage_jna"; alignment = centered; is_bold = true; width = 80; } spacer_1; : row { fixed_width = true; alignment = centered; : button { key = "cb_frage_j"; label = "Ja"; } : button { key = "cb_frage_n"; label = "Nein"; } cancel_button; // definiert in base.dcl } } Nun möchte ich in Lisp die Breite (= width) ändern um einen Text mit mehr als 80 Zeichnen anzeigen zu können. Wie muss ich das machen? Danke im Voraus und viele Grüße Bernd Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADchup Ehrenmitglied V.I.P. h.c.

 Beiträge: 3338 Registriert: 14.03.2001 Sicher ist, dass nichts sicher ist. Selbst das nicht. Joachim Ringelnatz
|
erstellt am: 10. Okt. 2006 12:53 <-- editieren / zitieren --> Unities abgeben:          Nur für Bernd10
Hi, schreib dir eine Funktion, die dir zur Laufzeit der aufrufenden Lisp die DCL-Datei im temporären Verzeichnis erzeugt, bevor du sie aufrufst. Anschließend lässt du sie wieder löschen. Ein unvollständiges Beispiel (irgendwo rauskopiert):
Code:
(defun Fragwas (/ dclfile dcl-id result) (MakeDCL (setq dclfile (strcat (getvar "TEMPPREFIX") "Fragen.dcl")) ) (setq dcl_id (load_dialog dclfile)) (if (not (new_dialog "Fragen" dcl_id)) (exit) ) (action_tile ... ) (start_dialog) (unload_dialog dcl_id) (vl-file-delete dclfile) )(defun MakeDCL (fname / f) (setq f (open fname "w")) (write-line "Fragen : dialog {" f) (write-line "label = \"Schnucki\";" f) (write-line ... ) (close f) )
Gruß CADchup
------------------ CADmaro.de [Diese Nachricht wurde von CADchup am 10. Okt. 2006 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |

| |
Bernd10 Mitglied
  
 Beiträge: 763 Registriert: 20.11.2003 Intel(R) Xeon(R) W-2123 CPU @ 3.60GHz 16 GB RAM Windows 10 Pro 64-bit AutoCAD Mechnical 2020 Deu
|
erstellt am: 10. Okt. 2006 13:52 <-- editieren / zitieren --> Unities abgeben:         
Hallo CADchup, Zitat: Original erstellt von CADchup:
schreib dir eine Funktion, die dir zur Laufzeit der aufrufenden Lisp die DCL-Datei im temporären Verzeichnis erzeugt, bevor du sie aufrufst. Anschließend lässt du sie wieder löschen. Ein unvollständiges Beispiel (irgendwo rauskopiert):
Code:
(defun Fragwas (/ dclfile dcl-id result) (MakeDCL (setq dclfile (strcat (getvar "TEMPPREFIX") "Fragen.dcl")) ) (setq dcl_id (load_dialog dclfile)) (if (not (new_dialog "Fragen" dcl_id)) (exit) ) (action_tile ... ) (start_dialog) (unload_dialog dcl_id) (vl-file-delete dclfile) )(defun MakeDCL (fname / f) (setq f (open fname "w")) (write-line "Fragen : dialog {" f) (write-line "label = \"Schnucki\";" f) (write-line ... ) (close f) )
das ist eine Möglichkeit, mit der ich auf jeden Fall testen werde, ob es für meinen Fall so geht. Danke und viele Grüße Bernd Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |