Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Lisp
  edit_box formatieren

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte
Autor Thema:  edit_box formatieren (1184 mal gelesen)
schachtelmacher
Mitglied
Verpackungsmittelmechaniker, Entwicklung


Sehen Sie sich das Profil von schachtelmacher an!   Senden Sie eine Private Message an schachtelmacher  Schreiben Sie einen Gästebucheintrag für schachtelmacher

Beiträge: 86
Registriert: 07.01.2004

Windows XP Prof.
Autocad 2004
Autocad 2007
Freecad
Erpa V-Pack
Ubuntu

erstellt am: 09. Feb. 2005 13:21    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities


test1.jpg


chekliste-neu.DCL.txt

 
Hallo,

ich weiß, das ist wahrscheinlich ein ganz ganz kleines Problem.
Doch ich komme nicht drauf, da ich seit 1 1/2 Jahren nichts mehr
programmiert habe. Ich bin ein Feierabendprogrammierer .

Ich möchte folgendes lösen - siehe Anhänge.

Vielleicht könnt Ihr mir helfen. DANKE

schachtelmacher

------------------
"Es gibt keine Probleme, sondern nur Lösungen"

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

joern bosse
Ehrenmitglied
Dipl.-Ing. Vermessung


Sehen Sie sich das Profil von joern bosse an!   Senden Sie eine Private Message an joern bosse  Schreiben Sie einen Gästebucheintrag für joern bosse

Beiträge: 1734
Registriert: 11.10.2004

Window 10
ACAD 2021
CIVIL 2021
BricsCAD V14-V22
Intel(R) Core(TM)i5-8250U CPU @ 1.60GHz 1.80 GHz
16.0GB RAM
NVIDIA GeForce GTX 1050<P>

erstellt am: 09. Feb. 2005 13:41    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für schachtelmacher 10 Unities + Antwort hilfreich

hallo schachtelmacher,

wenn Du die edit-Boxen gleich lang haben willst, dann mußt Du edit_width bei allen auf 40 setzen.

------------------
viele Grüße

Jörn

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

schachtelmacher
Mitglied
Verpackungsmittelmechaniker, Entwicklung


Sehen Sie sich das Profil von schachtelmacher an!   Senden Sie eine Private Message an schachtelmacher  Schreiben Sie einen Gästebucheintrag für schachtelmacher

Beiträge: 86
Registriert: 07.01.2004

erstellt am: 09. Feb. 2005 13:55    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo,

nein, die edit_box'en sollen so bleiben.
Ich habe nur das Problem, dass ich diese nur durch Einfügen
von Leerzeichen alle auf gleiche Startposition bekomme.

text ABC    : Anfang Feld
text A        : Anfang Feld
.
.
.
Nur das passt (s. oben) auch nicht immer.

Die Eingabefelder sollen ohne Rücksicht auf Länge der Bezeichnung
und Länge der Eingabebox alle ein einer Flucht untereinander beginnen.

Ich hoffe mich jetzt ein bisschen deutlicher ausgedrückt zu haben.

Eine Lösung wäre vielleicht die Textbezeichnung in einer column
als reinen Text zu verfassen und in einer zweiten column die edit_box'en ohne Bezeichnung ("") zusammenzufassen
und das ganze dann als row nebeneiander darzustellen.

Aber geht das nicht einfacher?

Gruß

schachtelmacher

------------------
"Es gibt keine Probleme, sondern nur Lösungen"

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

fuchsi
Mitglied
Programmierer c#.net Datawarehouse


Sehen Sie sich das Profil von fuchsi an!   Senden Sie eine Private Message an fuchsi  Schreiben Sie einen Gästebucheintrag für fuchsi

Beiträge: 1201
Registriert: 14.10.2003

AutoCad Version 2012 deu/enu
<P>Windows 7 64bit

erstellt am: 09. Feb. 2005 16:12    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für schachtelmacher 10 Unities + Antwort hilfreich

du muss wirklich die Editbox-Beschriftung von der editbox trennen

ob du es nun mit 2 spalten (einmal test, einmal editboxen) machst oder mit mehreren zeilen ist egal.
Hier die zeilenvariante

: boxed_column {
  : spacer { height = 1; }

  :row {fixed_width=true;
    : text {label ="Datum"; width = 35;}
      : edit_box {key = "datum" ;edit_width = 10;}
     
    }
  :row {fixed_width=true;
    : text {label ="Ersteller"; width = 35;}
      : edit_box {key = "Ersteller" ;edit_width = 30;}
     
    }
  :row {fixed_width=true;
    : text {label ="Verbleib des Kundenmusters"; width = 35;}
      : edit_box {key = "verbleib" ;edit_width = 30;}
     
    }
  :row {fixed_width=true;
    : text {label ="noch so ne blöde zeile"; width = 35;}
      : edit_box {key = "datum1" ;edit_width = 40;}
     
    }

------------------
WWW.FFZELL.AT.TC

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

schachtelmacher
Mitglied
Verpackungsmittelmechaniker, Entwicklung


Sehen Sie sich das Profil von schachtelmacher an!   Senden Sie eine Private Message an schachtelmacher  Schreiben Sie einen Gästebucheintrag für schachtelmacher

Beiträge: 86
Registriert: 07.01.2004

erstellt am: 10. Feb. 2005 06:56    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Zitat:

.....

  :row {fixed_width=true;
    : text {label ="Verbleib des Kundenmusters"; width = 35;}
      : edit_box {key = "verbleib" ;edit_width = 30;}
     
    }


Hi,

genau, ohne trennen glaube ich geht es nicht.
Aber zu der oberen Zeile habe ich noch eine Frage:
Kann man den Abstand zwischen dem Text und dem Eingabefeld noch verkleinern?
Wenn man width bei label auf z.B. 30 setzt geht das nicht.
Ich möchte nicht so einen großen Abstand dazwischen haben!
Gibt es da noch eine Lösung?

Grusse

schachtelmacher

------------------
"Es gibt keine Probleme, sondern nur Lösungen"

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

schachtelmacher
Mitglied
Verpackungsmittelmechaniker, Entwicklung


Sehen Sie sich das Profil von schachtelmacher an!   Senden Sie eine Private Message an schachtelmacher  Schreiben Sie einen Gästebucheintrag für schachtelmacher

Beiträge: 86
Registriert: 07.01.2004

Windows XP Prof.
Autocad 2004
Autocad 2007
Freecad
Erpa V-Pack
Ubuntu

erstellt am: 04. Mrz. 2005 09:12    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo,

heute habe ich wieder zwei Fragen:

FRAGE 1:

Wie kann man in einem edit_box Feld mehrzeilig Text eingeben, z. B.

blablabla
2.Zeile blablabla
3. Zeile ...

?

Bis jetzt kann ich zwar das Feld mit einer Höhe von 3 Zeilen angeben,
schreiben kann ich aber nur in einer Zeile ohne Returneingaben.

Also ich möchte so eine Art MEMO-Feld, wo man beliebig Text hineinschreiben kann.

FRAGE 2:

In einer DCL-Datei möchte ich bestimmten Text ({label = "...." ...) mit Fetter Schrift darstellen und das Eingabefeld mit einer anderen Hintergrundfarbe versehen. Geht das?
Ich habe nichts gefunden, und programmiere ja auch zu selten, um mich hier genau auszukennen. Verzeiht mir!


Grüsse

schachtelmacher

------------------
"Es gibt keine Probleme, sondern nur Lösungen"

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Brischke
Moderator
CAD on demand GmbH




Sehen Sie sich das Profil von Brischke an!   Senden Sie eine Private Message an Brischke  Schreiben Sie einen Gästebucheintrag für Brischke

Beiträge: 4171
Registriert: 17.05.2001

AutoCAD 20XX, defun-tools (d-tools.eu)

erstellt am: 04. Mrz. 2005 09:21    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für schachtelmacher 10 Unities + Antwort hilfreich

Hallo Schachtelmacher,

FRAGE 1) geht nicht 
FRAGE 2)
      FETT kannst du mit Tile-Eigenschaft is_bold einstellen.
      FARBE kann nur bei IMAGE~ Tiles geändert werden.

Grüße Holger

------------------
Holger Brischke
CAD on demand GmbH                              Autodesk User Group Central Europe
Individuelle Lösungen von Heute auf Morgen.              AUGCE Manager Deutschland

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

schachtelmacher
Mitglied
Verpackungsmittelmechaniker, Entwicklung


Sehen Sie sich das Profil von schachtelmacher an!   Senden Sie eine Private Message an schachtelmacher  Schreiben Sie einen Gästebucheintrag für schachtelmacher

Beiträge: 86
Registriert: 07.01.2004

erstellt am: 04. Mrz. 2005 09:29    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities


@ Brischke:

vielen Dank für die Info.

Dann werde ich Frage 1 mit mehreren Eingabefeldern lösen.

Grüsse

schachtelmacher

------------------
"Es gibt keine Probleme, sondern nur Lösungen"

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Peter2
Ehrenmitglied V.I.P. h.c.




Sehen Sie sich das Profil von Peter2 an!   Senden Sie eine Private Message an Peter2  Schreiben Sie einen Gästebucheintrag für Peter2

Beiträge: 3701
Registriert: 15.10.2003

Win 10/64 Pro
AutoCAD MAP 3D 2018
BricsCAD 22

erstellt am: 04. Mrz. 2005 09:46    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für schachtelmacher 10 Unities + Antwort hilfreich

Du könntest natürlich auch nur ein Feld verwenden und hintereinander die einzelnen Werte eingeben (Wert 1 eintippen - übernehmen und zwischenspeichern - Wert 2 eintippen - übernehmen ..).

Aber das ist wahrscheinlich unübersichtlicher zu bedienen und komplexer zu programmieren, also sind die 3 Edit_Boxen vermutlich die bessere Lösung.

Peter

------------------
Für jedes Problem gibt es eine einfache Lösung.
Die ist aber meistens falsch. ;-)

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

marc.scherer
Ehrenmitglied V.I.P. h.c.
CAD-Administrator



Sehen Sie sich das Profil von marc.scherer an!   Senden Sie eine Private Message an marc.scherer  Schreiben Sie einen Gästebucheintrag für marc.scherer

Beiträge: 2490
Registriert: 02.11.2001

Windows 10 64bit
AutoCAD Architecture 2018/2019 (deu/eng)
AEC-Collection 2019 (Revit und Zeugs)
Wenn sich's nicht vermeiden läßt:
D-A-CH Erweiterung (mies implementierter Schrott)

erstellt am: 04. Mrz. 2005 10:56    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für schachtelmacher 10 Unities + Antwort hilfreich

Hi,
das mit dem Anmerkungsfeld mußte ich auch irgendwie lösen...
Ich habe folgendes gemacht:
1. In der DCL ein zehnzeiliges Anmerkungsfeld mit 'nem Knopf daneben gebaut:
Code:

ZVO_NOTE_10 : boxed_row {
label = "Bemerkung:";
: paragraph {
            : text_part {
                key = "TEXT1";
//                width = 63;
            }
            : text_part {
                key = "TEXT2";
//                width = 63;
            }
            : text_part {
                key = "TEXT3";
//                width = 63;
            }
            : text_part {
                key = "TEXT4";
//                width = 63;
            }
            : text_part {
                key = "TEXT5";
//                width = 63;
            }
            : text_part {
                key = "TEXT6";
//                width = 63;
            }
            : text_part {
                key = "TEXT7";
//                width = 63;
            }
            : text_part {
                key = "TEXT8";
//                width = 63;
            }
            : text_part {
                key = "TEXT9";
//                width = 63;
            }
            : text_part {
                key = "TEXT10";
//                width = 63;
            }
}
: button {
            fixed_width = true;
            fixed_height = true;
            alignment = top;
            label = "Editieren";
            key = "BTNEDITNOTE";
        }
}

2. Wenn jemand was in das Anmerkungsfeld schreiben will, muß er den Knopf drücken, welcher die Funktion "acet-ui-txted" aus den Express-Tools aufruft (da gibt es 'n paar Speztialitäten zu beachten, kann man dem Ablauf der folgenden Funktion aber entnehmen):

Code:

;; Funktion ruft den Editor auf, setzt den als Argument
;; übergebenen Symbolnamen evtl auf einen neuen Wert und
;; führt ein done_dialog mit dem als Argument übergebenen index aus.
(defun MS:BTNEDITNOTE (SYMBOLNAME DIALOGTITLE USERPROMPT DIALOG-STAT / RETVAL SYMVAL)
  (if (setq SYMVAL (eval SYMBOLNAME))
    (if (setq RETVAL (MS:SAFE-EVAL
                      (list 'MS:EDIT_BOX
                            SYMVAL
                            DIALOGTITLE
                            USERPROMPT
                      ) ;_ end of list
                    ) ;_ end of MS:SAFE-EVAL
        ) ;_ end of setq
      (set SYMBOLNAME RETVAL)
    ) ;_ end of if
  ) ;_ end of if
  (done_dialog DIALOG-STAT)
) ;_ end of defun

;; Basiert auf der acetutil.arx
;; (acet-ui-txted [text [caption [note]]])
;; Der Text geht als ";" separated rein und raus
;; intern muß jedoch der delimiter ein "\r\n" sein.
;; Die Wandlung erfolgt in dieser Sub.
(defun MS:EDIT_BOX (TEXT DIALOGTITLE USERPROMPT / RETVAL)
  ;; Wandlung des textstrings in ein kompatibles Format:
  (setq TEXT (MS_STRTOKEN-SUBST TEXT "\r\n" ";"))
  (if (setq RETVAL (MS:SAFE-EVAL
                    (list 'acet-ui-txted TEXT DIALOGTITLE USERPROMPT)
                  ) ;_ end of MS:SAFE-EVAL
      ) ;_ end of setq
    (setq RETVAL (MS_STRTOKEN-SUBST RETVAL ";" "\r\n"))
    (setq retval (MS_STRTOKEN-SUBST TEXT ";" "\r\n"))
  ) ;_ end of if
  RETVAL
) ;_ end of defun


3. Die Rückgabe der Anmerkung erfolgt als EIN String mit 'nem Semikolon als String, nachfolgende Funktionen bereiten den String dann auf und füllen das Anmerkungsfeld im Hauptdialog:

Code:

;; Funktion stellt den delimited-String in einem Zehnzeiligen Bemerkungs-
;; feld dar.
;; Das Argument KEY ist ein Teilstring für den KEY der weitere Teilstring
;; ergibt sich durch indizies. Also z.B. KEY = TEXT dann wird daraus TEXT1, TEXT2 usw.
;; Argumente:
;; KEY = Der Anfangsstring für den Key, wird durch eine laufende Nummer erweitert
;; NOTESTR = Ein eventuell mit 'nem Token geteilter String (csv)
;; DELIMITER = Das Trennzeichen für csv
;; NOTELEN = Anzahl der zulässigen Zeilen
;;
;; Rückgabe = Keine
;;
;; Beispielaufruf:
;; (ZVO-NOTE-IF "TEXT" "A;B;C;D;E;G" ";" 10)
(defun ZVO-NOTE-IF (KEY NOTESTR DELIMITER NOTELEN / INDEX NOTELST)
  (setq KEY  (strcase KEY)
        INDEX 1
  ) ;_ end of setq
  (if (get_tile (strcat KEY (itoa INDEX)))
    (if NOTESTR
      (if (/= NOTESTR "")
        (progn
          (setq NOTELST (MS_STRTOKEN NOTESTR DELIMITER NIL)
                NOTELST (LIMITLIST NOTELST NOTELEN "")
          ) ;_ end of setq
          (foreach ELEM NOTELST
            (SET-TILE-IF (strcase (strcat KEY (itoa INDEX))) ELEM)
            (setq INDEX (1+ INDEX))
          ) ;_ end of foreach
        ) ;_ end of progn
      ) ;_ end of if
    ) ;_ end of if
  ) ;_ end of if
) ;_ end of defun

;; Funktion limitiert die Länge einer Liste auf
;; die im Argument LSTLEN übergebene Länge
;; Ist die Liste zu lang, wird sie gekürzt
;; Ist sie zu kurz, wird sie mit dem Wert
;; des Arguments FILLPATTERN aufgefüllt
(defun LIMITLIST (LST LSTLEN FILLPATTERN / LEN retval)
  (setq LEN (length LST))
  (if (> LEN LSTLEN)
    (repeat LSTLEN
      (setq RETVAL (cons (car LST) RETVAL)
            LST    (cdr LST)
      ) ;_ end of setq
    ) ;_ end of repeat
    (progn
      (setq RETVAL (reverse LST))
      (repeat (- LSTLEN LEN)
        (setq RETVAL (cons FILLPATTERN RETVAL))
      ) ;_ end of repeat
    ) ;_ end of progn

  ) ;_ end of if
  (reverse retval)
) ;_ end of defun



Den Anmerkungstext selber speichere ich nach dem Verlassen des Dialogfeldes in EINEM Attribut eines Blocks als EIN String mit dem Semikolon als Delimitter, aber das ist ja nur in MEINEM Fall so. Weiterverarbeiten kann man das dann ja auch anders...

Die Codes die hier stehen sind so natürlich NICHT 1:1 verwendbar, dazu fehlen einfach zu viele Sub-Routinen aus meiner Bibliothek.
Aber ich denke es zeigt auf, wie ich das Problem gelöst habe...

------------------
Ciao,
Marc

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz