Visual effect lässt sich nicht unterbrechen

Startseite Foren Deutsches LiveCode-Forum Visual effect lässt sich nicht unterbrechen

Ansicht von 6 Antwort-Themen
  • Autor
    Beiträge
    • #2903
      marcel
      Teilnehmer

        Folgendes “kleine” Problem.
        Auf eine Karte wird ein “image” mit einem “visual effect” angezeigt.
        Während des Einblenden reagiert keine Schaltfläche (Button) auf der Karte.
        Hat jemand hierzu eine Idee.

        Beispiel Source auf der Karte:
        on openCard
        ———-
        set the visible of image “myImage” to false
        send “doShow” to me in 5 seconds
        ———-
        end openCard

        on doShow
        show image “myImage” with visual effect “dissolve” very slow
        end doShow

      • #2905
        Klaus Major
        Administrator

          Hi Marcel,

          déjà vue? Komme gerade von englsichen Forum 🙂

          Leider blockiert ein “visual effects” komplett, alles hält an, bis der Effect fertig ist.
          Dafür gibt es auch keinen Workaround.

          Gruß

          Klaus

        • #2907
          marcel
          Teilnehmer

            OK, Danke. Aber schade 🙂
            Gruß
            Marcel

          • #2909
            Klaus Major
            Administrator

              Et is, wie et is, wa?

              Aber gerade den DISSOLVE Effekt könnte man gut “nicht blocking” nachbauen, indem man die Deckkraft (blendlevel) über einen gewissen Zeitraum regelt und direkt die Sichtbarkeit einstellt.

              Z.B. so, bitte ausprobieren und mit den verschiedenen Werten und “steps” im Repeat loop experimentieren:

              command doshow
                ## Zunächst komplett durchsichtig machen
                set the blendlevel of img "your image" to 100
                ## Nun anzeigen
                show img "your image"
                repeat with i = 90 down to 0 step 10
                    set the blendlevel of img "your image" to i
                    ## Der Trick, die Anwendung dennoch "responsive" zu halten:
                    wait 100 millisecs WITH MESSAGES
                end repeat
              end doshow

              Gruß

              Klaus

            • #2911
              marcel
              Teilnehmer

                Werde es A.S.A.P. ausprobieren. Wird aber doch etwas dauern.
                Gruß
                Marcel

              • #2914
                marcel
                Teilnehmer

                  Prinzip geht, aber …..
                  habe die “repeat” ändern müssen in

                  repeat with i = 0 to 100 step 10
                  …..
                  end repeat

                  Der “down to” wollte irgendwie nicht.

                  gruß
                  Marcel

                • #2918
                  Klaus Major
                  Administrator

                    Oh ja, Verzeihung, habe die Werte verwechselt!
                    blendlevel 0 = durchsichtig

                    Das hier klappt aber:

                    command doshow
                       ## Zunächst komplett durchsichtig machen
                       set the blendlevel of img 1 to 0
                       ## Nun anzeigen
                       show img 1
                       repeat with i = 10 to 100 step 10
                          set the blendlevel of img 1 to i
                          ## Der Trick, die Anwendung dennoch "responsive" zu halten:
                          wait 100 millisecs WITH MESSAGES
                       end repeat
                    end doshow
                Ansicht von 6 Antwort-Themen
                • Du musst angemeldet sein, um auf dieses Thema antworten zu können.