Button anwählen, Farbe ändern

Startseite Foren Deutsches LiveCode-Forum Button anwählen, Farbe ändern

Ansicht von 4 Antwort-Themen
  • Autor
    Beiträge
    • #21889
      Gutschi
      Teilnehmer

        Hallo zusammen,

        ich muss mal wieder fragen 🙂

        ich möchte gerne, dass sich die beim Auswählen (Drücken auf einen Button) die Hintergrundfarbe des Button auf folgenden Wert #14112F ändert. Diese Hintergrundfarbe soll so lange bleiben, bis ich erneut auf den Button klicke, danach soll die Ausgangshintergrundfarbe (#E07A5F) wieder erscheinen. Außerdem möchte ich beim Auswählen des Buttons nicht nur die Hintergrundfarbe ändern, sondern auch bspw. 100 in eine Variable schreiben, gleiches gilt, wenn ich den Button wieder auf seine Ausgangsfarbe zurücksetze, dass der Wert dann in der Variablen wieder gelöscht ist.

        Kann mir jemand helfen? 🙂

        Vielen Dank.

        LG DAniel

      • #21891
        Klaus Major
        Verwalter

          Wenn wir eine Farbe in LC abfragen, bekommen wir den Wert immer in RGB zurück.
          Daher musst Du zuerst die HEX-Werte in RGB umwandlen und damit arbeiten.
          #14112F = 20,17,47
          #E07A5F = 224,122,95

          So geht es dann mit Deinem Button:

          ## Ich habe hier eine globale Variable für Deine Zahl verwendet:
          global dieVariable
          
          on mouseUp 
             if the backgroundcolor of me = 20,17,47 then
                put 224,122,95 into tNeu
                put 100 into dieVariable
             else
                put 20,17,47 into tNeu
                put EMPTY into dieVariable
             end if
             set  the backgroundcolor of me to tNeu
             ## put dieVariable
          end mouseUp
        • #21892
          Gutschi
          Teilnehmer

            Hallo Klaus,

            wow, vielen Dank für die schnelle Antwort, das funktioniert genauso, wie ich es mir gewünscht habe, danke dir.

            Darf ich dich direkt noch was fragen? => Wenn ich ein Field habe, soll bei iOS bzw. Android bei einer Eingabe direkt die Ziffern/Zahlen-Tastatur zur Eingabe angezeigt werden. In das Field sollen nur Zahlen eingegeben werden (können).

            LG

          • #21895
            Klaus Major
            Verwalter

              Wenn ich ein Field habe, soll bei iOS bzw. Android bei einer Eingabe direkt die Ziffern/Zahlen-Tastatur zur Eingabe angezeigt werden.

              Vielleicht so, Skript des/der Feldes(r):

              on openfield
                 mobileSetKeyboardType "numeric"
              end openfield
              
              ## In das Field sollen nur Zahlen eingegeben werden können:
              on keydown tKey
                if tKey is in "0123456789" then
                  pass keydown
                end if
              end keydown

              Anstatt den Typ des gewünschten Keyboards „on openfield“ festzulegen, kannst Du dem Feld direkt schon einen Keyboardtyp zuweisen. Der wird dann immer angezeigt, wenn das Feld bearbeitet wird. Also einmal per Message BOx oder mit einem Button:

              ...
              set the keyboardType of field "Dein Feld hier" to "numeric"
              ...

              Das wird dann mit dem Stack gespeichert. Dann brauchst Du nur den KEYDOWN Handler im Skript, oder Du erstellst ein BEHAVIOR, falls Du mehrere solcher Felder benötigst.

            • #21949
              Gutschi
              Teilnehmer

                Hi Klaus,

                ich probiere es mal aus, danke dir…

                LG Daniel

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