Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Lisp
  edit_box soll mode_tile sofort verändern

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 soll mode_tile sofort verändern (1030 mal gelesen)
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: 22. Nov. 2011 16:34    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

Mit Edit_box frage ich diverse Werte ab, und solange keine Werte gespeichert sind (action_tile  -> setq) bleibt der "Start"-Button mit mode_tile deaktiviert.

Die Sache funktioniert aber nur, wenn ich nach dem Eintippen in die Edit_box woanders hinklicke (was anscheinend erst den action_tile startet). Geht es (einfach!!) auch, dass schon während des Eintippens der mode_tile geändert wird?

Schönen Abend

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

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: 22. Nov. 2011 18:00    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 Peter2 10 Unities + Antwort hilfreich

Hallo Peter,
mit DCL ist das ein wenig schwierig, ich habe bereits ab und an eine Dummy-Button eingefügt, der natürlich alles andere als schön ist.
Das Prinzip läuft folgendermaßen:
Die Edit_box erhält beim starten den Curser mit mode_tile 2 und das Attribut allow_accept=true
Der Dummy-Button erhält das Attribut is_default=true

Wenn die Eingabe in der EditBox jetzt mit ENTER bestätigt wird, dann kann die action_tile-Anweisung des Dummy-Buttons z.B. mit get_tile den Wert der Edit_box auswerten und dementsprechend weitere Steuerelemente freischalten.

Ist aber ziemlich müßig.

Ich habe mir folgende angewöhnt: wenn ich in in DCL arbeite und eine Eingabe überwachen möchte, dann verwende ich einen Button und einen daneben stehenden Text. Mit dem Button öffnet sich ein weiteres Dialogfenster mit einer Edit_box für die Eingabe des Wertes. Beim schließen der zusätzlichen Dialogbox kann ich dann den Wert auswerten und dementsprechend Steuerelemente im Hauptdialogfenster schalten. Der Wert wird dann auch einfach im Text neben dem Button angeschrieben.

Eine noch schönere Möglichkeit bietet OpenDcl, da kann jeder Tastendruck im Eingabefeld überwacht werden.

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

Jörn
http://www.bosse-engineering.com

Stammtisch in Wolfsburg

http://ww3.cad.de/foren/ubb/Forum491/HTML/000179.shtml

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

Theodor Schoenwald
Ehrenmitglied



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

Beiträge: 1672
Registriert: 16.04.2002

erstellt am: 22. Nov. 2011 21:20    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 Peter2 10 Unities + Antwort hilfreich

Hallo Peter,

hift Dir so etwas?
-------------------------
Dialog
-------------------------
: boxed_radio_column
    {
      : toggle
      {
        label = "Gleiche Angaben für weitere Objekte";
        key  = "GL";
      }
      : toggle
      {
        label = "Anfangs-Startpunkt setzen";
        key  = "ASTP";
      }
    }
-------------------------
Lisp-Zeilen
-------------------------
...
...
(action_tile "GL" "(SETQ GL $VALUE)(MODE_ANZ3)")
(MODE_ANZ3)
(action_tile "ASTP" "(SETQ ASTP $VALUE)")
...
...

;; Dialoganzeige steuern
(defun MODE_ANZ3 ()
(if (= GL "1")
  (mode_tile "ASTP" 1)
  (mode_tile "ASTP" 0)
)
)

So funktioniert es:
Wenn Gleich "GL" angewählt wird ("1" ist),
wird die Funktion Anfangsstartpunkt "ASTP" ausgeblendet.

Gruß
Theodor

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: 22. Nov. 2011 22:19    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

Besten Dank an beide

@Jörn
- Dummy Button: Wie du sagst - möglich, aber etwas um die Ecke. Braucht ausserdem ENTER statt Mausklick
- Button mit Eingabe: Klingt interessant, bringt aber ein paar Klicks mehr als die mögliche Form - "TAB in die Edit Box - Werte eingeben - ENTER bzw. TAB"
- Open DCL: Bisher immer kurz überflogen, nie konkret verwendet ...

@Theodor
Dei Beispiel verwendet einen Toggle - und der reagiert sofort (wie auch Radio Button usw.). Mein Problem wäre die "online-Überwachung" der Edit_Box.

Aber bitte keine weitere Zeit mehr in die Frage investieren - das geht ohnehin Richtung "Zuckerguß".

Schönen Abend noch

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

wronzky
Ehrenmitglied V.I.P. h.c.
CAD-Dienstleistungen für Architekten



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

Beiträge: 2154
Registriert: 02.05.2005

CAD:
AutoCAD 2.6 bis 2014
ADT 2005 - 2014
Arcibem
System:
Windows 2000, XP, NO VISTA
Internet-Startseite:
http://www.archi.de

erstellt am: 22. Nov. 2011 22:40    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 Peter2 10 Unities + Antwort hilfreich

Hallo Peter,
solange die edit-box den Fokus hat, kannst Du die Eingabe nicht überwachen. Das action-tile wird immer erst ausgelöst, wenn der Benutzer die edit-box verläßt - über ENTER oder durch Klicken an andere Stelle. Aber im Grunde reichen 2 Enter, die sind eh schneller als Mausklicks, und Du bist ja sowieso an der Tastatur, wenn Du die edit-box ausfüllst. Das ERSTE Enter löst das action_tile aus, in dem Du den Fokus auf den Start-Button legst. Das ZWEITE Enter löst den Start-Button aus.
Und noch was grundsätzliches: ich mache in den action_tile einer edit-box nie ein "setq", damit im Falle eines Abbruchs die alten Werte erhalten bleiben. Das Setzen der Variablen immer erst bei Betätigung von OK über get_tile.

Grüsse, Henning

------------------
Henning Jesse
VoxelManufaktur
Computer-Dienstleistungen für Architekten und Ingenieure

  http://www.voxelman.de

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: 22. Nov. 2011 22:53    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

Guten Abend Henning

danke für die Hinweise. Die "get_tile" Logik muss ich mir mal anschauen.

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

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