Anfängerfrage zu Button Script: Button auf anderen Card verändern

Startseite Foren Deutsches LiveCode-Forum Anfängerfrage zu Button Script: Button auf anderen Card verändern

Schlagwörter: ,

Ansicht von 5 Antwort-Themen
  • Autor
    Beiträge
    • #9200
      SashMo
      Teilnehmer

      Hallo Zusammen, ?

      ich habe eine Anfängerfrage und hoffe ihr könnt mir weiterhelfen. Währenddessen suche ich natürlich auch selbst nach einer Lösung. Ich bin allerdings noch nicht fündig geworden.
      Ich würde gern folgendes Szenario testen wollen:
      Ich möchte auf CARD A einen Switch-Button aktivieren und dadurch soll ein Button auf CARD B seine Hintergrundfarbe ändern. Wenn ich den Switch-Button deaktiviere, soll er seine Ausgangsfarbe wieder annehmen. Bisher bin ich so weit gekommen (bitte nicht lachen… ich habe mir LiveCode gestern erst installiert):

      Diese Zeilen stehen im Switch-Button von CARD A

      on hiliteChanged
      go to card "cardB"
      set the backgroundcolor of button "buttonName" to "green"
      go to card "cardA"
      end hiliteChanged

      Wie man sehen kann, geht er flott zu CARD B, stellt den Button auf grün und kehrt wieder zurück. Mir schwant schon, dass der Stil wahrscheinlich unterirdisch ist, aber ich wusste mir auf die Schnelle nicht anders zu helfen. (Auch dafür nehme ich gerne und dankbar Tipps entgegen)
      So weit so… naja gut. ?

      Allerdings habe ich keine Idee wie ich es hinbekomme den Button von CARD B mit Hilfe des Buttons von CARD A wieder umzustellen (quasi rückgängig zu machen).
      Ich hoffe ich konnte mich halbwegs verständlich ausdrücken. Ich hatte noch mit so etwas vorher am Hut, daher fehlen mir eigentlich alle Grundlagen.

      Viele Grüße ausm Paderborner Ländle
      SashMo

    • #9205
      Klaus Major
      Verwalter

      Hallo SashMo,

      willkommen im Forum!

      Du kannst immer und von überall auf jedes Objekt in LC zugreifen!
      Vorraussetzung: Die genaue Adresse stimmt! 🙂

      In Deinem Fall heisst das:

      ...
      set the backgroundcolor of button "buttonName" OF card "cardB" to "green"
      ...
      ## Oder gar:
      set the backgroundcolor of button "buttonName" OF card "cardB" OF stack "was weiss ich denn" to "green"
      ...
      ## Etc...

      Hier gibt es ein paar prima Stacks, um die „Basics“ von LC zu lernen, die sind zwar auf Englisch, aber das kriegst Du schon hin. 🙂
      Ausserdem sind die schon etwas älter, und Widgets gab es damals noch nicht, die werden also nicht behandelt.
      http://www.hyperactivesw.com/revscriptconf/scriptingconferences.html

      Bei Fragen bitte fragen!

      Gruß

      Klaus

    • #9207
      SashMo
      Teilnehmer

      Lerneffekt! 🙂 Woher soll man als absoluter „NichtProgrammierer“ wissen, dass es auch „else“ gibt. 🙂

      Ich habe es sinngemäß so gelöst:

      
      on hiliteChanged
      if the Hilite of me = "true" then
      go to card "cardB"
      set the backgroundcolor of button "buttonName" to "green"
      go to card "cardA"
      else
      go to card "cardB"
      set the backgroundcolor of button "buttonName" to "red"
      go to card "cardA"
      end if
      end hiliteChanged

      Jetzt wären nur noch ein paar Ideen für den Stil hilfreich. 🙂

      viele Grüße

    • #9209
      Klaus Major
      Verwalter

      Du brauchst nirgendwohin zu gehen!

      So geht’s, wie ich oben beschrieben hatte:

      on hiliteChanged
         if the Hilite of me = "true" then
            set the backgroundcolor of button "buttonName" of card "cardB" to "green"
         else
            set the backgroundcolor of button "buttonName" of card "cardB" to "red"
         end if
      end hiliteChanged

      Gruß

      Klaus

    • #9211
      SashMo
      Teilnehmer

      Vielen herzlichen Dank für die Hilfe und Info!! 🙂

    • #9213
      Klaus Major
      Verwalter

      Gerne, jederzeit!

Ansicht von 5 Antwort-Themen
  • Du musst angemeldet sein, um auf dieses Thema antworten zu können.