Vielleicht bin ich etwas aus der Übung, aber heute gab es ein Problem, aus dem ich nicht schlau werde:
- Ich habe ein DCL-Fenster mit einigen Buttons.
(Achtung: Pseudocode folgt.)
- Die Buttons sind im Lisp so belegt: (action_tile "mein_button" (meine_unterroutine)) (auf deutsch: wenn Knopf gedrückt, dann starte "meine_unterroutine")
- meine_unterroutine ist codiert mit (defun meine_unterroutine () ..
So weit so schön - meine_unterroutine führt etwas aus und fertig. Aber jetzt habe ich noch eingebaut:
(defun meine_unterroutine ()
(setq texta (getstring ..))
(setq textb (getstring ...)
(setq gesamt (strcat texta textb))
...
Und genau hier kommt das seltsame:
Wenn ich meine_unterroutine per button aufrufe, läuft sie über die Abfragen von texta und textb kommentarlos drüber und fällt dann beim strcat auf die Nase, weil die Werte nil sind.
Starte ich aber (meine_unterroutine) per Befehlszeile, werden die getstring schön abgefragt und strcat funktioniert.
Warum? Das sollte doch gleich funktionieren, oder?
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