Freitag
Hallo zusammen,
Mit dem Sript IF ..... THEN
ELSE
ENDIF
kann man über den Parameter "Boole'sche Operation" Elemente ein und ausblenden
Habe es bei meinem Script so geschrieben,
aber wenn ich z.B. den Parameter 2 erstelle z.B.
IF "Parameter Symbol 1" THEN
Script....2D oder 3D.....
ELSE
ENDIF
IF "Parameter Symbol 2" THEN
Script....2D oder 3D.....
ELSE
ENDIF
Das GDL Programm sagt, dass der Code so korrekt ist.
Das Problem ist, dass wenn ich das "Symbol 2" im Objekt auswähle und aktiviere (mit dem Kästchen an/aus), erscheint das Symbol 1 und gleichzeitig mit dem Symbol 2 (es überschneidet sich).
> Meine Frage ist nun, wie muss ich den Scriptbefehl schreiben, dass wenn ich Symbol 2 einblenden möchte (Aktiv Kästchen nur Symbol 2),
dass das Symbol 1 nicht erscheint ?
Gelöst! Gehe zu Lösung.
Freitag
Im Beispiel auf selfgdl zum Artikel Lock sieht man, dass nach einem Lock die zu sperrenden Parameter in Anführungszeichen stehen
also wäre es in deinem Beispiel das hier
IF anSymb1 THEN LOCK "anSymb2"
IF anSymb2 THEN LOCK "anSymb1"
Freitag
@Andreas81ch schrieb:
IF "Parameter Symbol 1" THEN
Das Problem ist, dass wenn ich das "Symbol 2" im Objekt auswähle und aktiviere (mit dem Kästchen an/aus), erscheint das Symbol 1 und gleichzeitig mit dem Symbol 2 (es überschneidet sich).
Das Problem ist, dass du versuchst mit der Variablenbeschreibung zu programmieren, statt mit dem Variablennamen
@Andreas81ch schrieb:
Im Screenshot ist die Info links von dem Boolean-Symbol ausgeschnitten - dort ist der Wert, den du ohne "" in die IF Bedingung reinschreibst
Freitag
2D Script so aktuell;
Freitag - zuletzt bearbeitet Freitag
Eine schnelle Möglichkeit wäre sowas hier:
IF anSymb1 THEN
pen 107.......
.......hotspot2 14.44755822793, 2.715300005495
ELSE
IF anSymb2 THEN
pen 107.............
.......hotspot2 14.44755822793, 2.115300005495
ENDIF
ENDIF
Edit:
wenn du beide Kästchen Symbol 1 und 2 angekreuzt haben solltest, wird er dann nur Symbol 1 darstellen, da die Bedingung zuerst erfüllt ist und er so die Abfrage beendet.
Freitag
Ok, danke für den Tipp.
PS:
Das Kästchen kann man ja und aus machen. Gibts ein Script, wo man sagt, wenn Kästchen A aktiviert ist, dass Kästchen B nicht aktivierbar ist und umgekehrt resp. wenn man Symbol 2 ankreuzt, dass das Kreuz bei Symbol 1 verschwindet?
Freitag - zuletzt bearbeitet Freitag
Ja, der Befehl heißt LOCK, alternativ geht vielleicht auch HIDEPARAMETER. Leg dir mal das GDL Handbuch oder besser das GDL Kochbuch unter das Kopfkissen.
-> selfGDL
Aber Achtung mit deinem "andersrum": Das kann evt. einen Kurzschluß erzeugen. Wenn du ein graphisches UI programmierst gibt es dann noch den Radio-Button, der wahrscheinlich das macht, was du willst.
Freitag
Habe schon paar mal ei Self GDL und GDL Graphisoft etc. nachgeschaut, paar Beispiele sind verständlich, und bei anderen muss man lange ausprobieren bis es funktioniert.
Freitag
Das ist was ich meine, habe versucht folgendes;
Im Parameter Script
Freitag
Im Beispiel auf selfgdl zum Artikel Lock sieht man, dass nach einem Lock die zu sperrenden Parameter in Anführungszeichen stehen
also wäre es in deinem Beispiel das hier
IF anSymb1 THEN LOCK "anSymb2"
IF anSymb2 THEN LOCK "anSymb1"
Freitag
Besten Dank für dein Support!