Variable mit Daten aus anderer Card füllen

Startseite Foren Deutsches LiveCode-Forum Variable mit Daten aus anderer Card füllen

Ansicht von 4 Antwort-Themen
  • Autor
    Beiträge
    • #20839
      magnolie04
      Teilnehmer

        Hallo,
        ich starte gerade erst mit LC (habe vorher mit C# programmiert) und hänge momentan an folgendem Problem:
        Ich habe ein Field in Card 1 und möchte den Text dieses Fields in eine Variable packen, die in Card 2 als globale Variable deklariert ist und im Script der Card 2 verwendet wird. Wie könnte die Syntax im put-Befehl aussehen?
        Es braucht kein konkretes Skript, ein Schema genügt.
        Vielen Dank.

      • #20841
        Torsten
        Teilnehmer

          Hallo Magnolie,

          im Skript vom Field in Card 1 die Variable auch als global deklarieren 🙂

          global gMeineGlobaleVariable

          und dann einfach

          put me into gMeineGlobaleVariable

          Ich finde allerdings die Verwendung von Custom Properties besser, weil man besser sehen kann, was in den Variablen drin steht und nicht in Gefahr gerät, das „global“ zu vergessen und dann aus Versehen nur mit einer Skript-Variablen arbeitet.

          siehe: https://livecode.fandom.com/de/wiki/Properties

          Happy Coding
          Torsten

        • #20843
          magnolie04
          Teilnehmer

            Danke für die schnelle Antwort.
            Wenn ich mit einer globalen Variable arbeite, müsste ich diese also sowohl im Skript des Field und im Skript der Card 2 deklarieren?
            Mir ist der Geltungsbereich von „global“ nicht ganz klar.
            Danke.
            Andreas

          • #20846
            Torsten
            Teilnehmer

              Hi Andreas,

              es gibt drei Möglichkeitem, den Geltungsbereich bzw. Scope einer Variablen zu bestimmen:

              * nur im Handler = Variable wird gar nicht explizit deklariert, sondern einfach im Handler direkt verwendet.

              * nur im Skript = Deklaration per local. Variable kann von anderen Handlern im selben Skript verwendet werden.

              * im ganzen Programm = Deklaration per global. Variable kann von allen Handlern adressiert werden, welche sie ebenfalls als global im Skript deklariert haben (erfordert eben Mehraufwand und die Gefahr, dass man ein Skript vergisst, wo man die Variable einsetzt).

              Happy Coding
              Torsten

            • #20850
              Torsten
              Teilnehmer
            Ansicht von 4 Antwort-Themen
            • Du musst angemeldet sein, um auf dieses Thema antworten zu können.