Bilder wechseln

Startseite Foren Deutsches LiveCode-Forum Bilder wechseln

Ansicht von 8 Antwort-Themen
  • Autor
    Beiträge
    • #4047
      RehW
      Teilnehmer

      Hallo zusammen,

      ich versuche gerade ein Bild welches auf der Card „images“ liegt auf der Card „main“ anzuzeigen. Dazu habe ich das Bild unter „back“ auf der Card „images“ erstellt.
      Folgendes habe ich schon probiert:

      im Cardscript:
      ————–
      put image „back“ of card „images“ into image „hintergrund“ of card „main“
      Bild wird nicht kopiert, keine Fehlermeldung

      set the id of images „hintergrund“ of card „main“ to the id of images „back“ of card „images“
      Fehlermeldung : compilation error at line 2 (Chunk: missing chunk) near „images“, char 15

      copy image „back“ of card „images“ to image „hintergrund“ of card „main“
      Fehlermeldung : execution error at line 2 (Chunk: source is not a container), char 1

      set backgroundPattern of card „main“ to the id of image „back“ of card „images“
      Bild wird angezeit, aber Grösse stimmt nicht

      im Stackscript:
      —————
      put image „back“ of card „images“ into image „hintergrund“ of card „main“
      Bild wird nicht kopiert, keine Fehlermeldung

      set the id of images „hintergrund“ of card „main“ to the id of images „back“ of card „images“
      Fehlermeldung : compilation error at line 2 (Chunk: missing chunk) near „images“, char 15

      copy image „back“ of card „images“ to image „hintergrund“ of card „main“
      Fehlermeldung : execution error at line 2 (Chunk: source is not a container), char 1

      set backgroundPattern of card „main“ to the id of image „back“ of card „images“
      Bild wird angezeit, aber Grösse stimmt nicht

      Habe schon versucht etwas zu finden wie es möglich ist, aber nichts gefunden.

      Gruss Rene

    • #4051
      Klaus Major
      Verwalter

      Hallo Rene,

      put image „back“ of card „images“ into image „hintergrund“ of card „main“
      Bild wird nicht kopiert, keine Fehlermeldung

      das ist die korrekte Syntax und sollte eigentlich funktionieren!?

      set the id of images „hintergrund“ of card „main“ to the id of images „back“ of card „images“
      Fehlermeldung : compilation error at line 2 (Chunk: missing chunk) near „images“, char 15

      Es dürfen keine zwei Objekte IDENTISCHE IDs besitzen, daher diese Fehlermeldung.
      Aber Du bist hier schon sehr nahe an der Lösung, siehe unten 🙂

      copy image „back“ of card „images“ to image „hintergrund“ of card „main“
      Fehlermeldung : execution error at line 2 (Chunk: source is not a container), char 1

      Wir können Objekte nur auf KARTEN oder STACKS kopieren.

      set backgroundPattern of card „main“ to the id of image „back“ of card „images“
      Bild wird angezeit, aber Grösse stimmt nicht

      Größe stimmte nicht? Dann musst Du das Ursprungsbild in der Größe ändern, bis es passt und das Bild „loclock“en.

      Optimal ist es, alle benötigten Bilder in der passenden Größe vorzubereiten und in LC zu verwenden.

      Kleiner Bilder vergrößen gibt sichtbaren Qualitätsverlust, größere Bilder zur Anzeige in LC verkleinern erhöht den Speicherbedarf und verringert somit die Performance.
      Nicht viel, aber es läppert sich.

      Mein Tip: Benutze BUTTONS zur Anzeige von Bildern! Mach ich seit Jahren! 🙂
      Ich importiere/referenziere alle benötigten Bild immer auf einer Karte in einem Substack und nutze dann nur Buttons im Mainstack, um die Bilder anzuzeigen.

      Einfach die ID des Bildes notieren, das Du mehrfach verwenden möchtest, dann einen Button erstellen, am besten „disabled“ soll ja niemand klicken, nur angucken, und sein ICON auf diese ID setzen. Ferig!

      Vorteil, so kännen wir ein und das selbe Bild X-mal im Stack verwenden, OHNE daß wir es irgendwohin kopieren müssen und ohne nennenswerten Overhead am RAM Verbrauch etc. gibt!

      Gruß

      Klaus

    • #4058
      RehW
      Teilnehmer

      Hallo Klaus,

      ich benutze schon Buttons für die Darstellung der Bilder. Ich wollte nur verschiedene Möglichkeiten probieren um LiveCode besser kennenzulernen. Danke für Deine Hilfe, habe so auch schon wieder etwas mehr gelernt.

      Gruss Rene

    • #4059
      Klaus Major
      Verwalter

      Hallo Rene,

      OK, wollte nur sicher gehen!:-)


      put image X into image Y

      ist schon die richtige Syntax, keine Ahnung, was bei Dir schief gelaufen sein könnte.

      Gruß

      Klaus

    • #4064
      RehW
      Teilnehmer

      Hallo Klaus,

      habe es nochmal mit put image… probiert unter Version 8.1.8 und 8.1.9 rc2. Bei beiden Version wird kein Bild angezeigt, auch nicht wenn ich einen anderen Namen für die Cards oder Images nehme oder es in der Message Box eingebe. Habe auch schon versucht einen neuen Stack mit 2 Cards zu erstellen und 1 Image pro Card. Selbe Ergebnis, Bild wird nicht kopiert und keine Fehlermeldung. Kann nur noch mal versuchen LiveCode neu zu installieren, sonst wüsste ich auch nicht weiter.

      Gruss Rene

    • #4065
      Klaus Major
      Verwalter

      Was sagt denn THE RESULT?

      put img X into img Y
      answer the result

      Vielleicht bringt das etwas Erhellendes…

      Gerade hier getestet, klappt:

      on mouseUp pMouseButton
         put img 1 of cd 2 into img 1
      end mouseUp

      AAAAABER, sind Deine Bilder eventuell referenziert?
      DANN musst Du:

      set the filename of img Y to the filename of img X

      😎

    • #4066
      Klaus Major
      Verwalter

      Das kannst Du per Skript überprüfen!
      Wenn ein Bild referenziert ist, dann ist: the text of img Y = EMPTY

    • #4067
      RehW
      Teilnehmer

      Hallo Klaus,

      mit set the filename… klappt es, The Result ist bei put image… und the text of… jeweils EMPTY. Das mit set the filename… hatte ich noch nicht probiert. Habe es im Dictionary zwar gefunden, dachte aber es funktioniert nur zum laden der Bilder. Und schon wieder etwas gelernt, vielen Dank Dir. Werde wohl in Zukunft auch mehr Buttons dafür benutzen.

      Gruss Rene

    • #4068
      Klaus Major
      Verwalter

      Hi Rene,

      mit set the filename… klappt es

      ich hatte es im Urin! 😀

      The Result ist bei put image… und the text of… jeweils EMPTY.

      Ist ja auch korrekt!

      Da die Bilder in Sinne von Livecode keinen Inhalt haben (text of img x = empty!), hat LC da ja nicht gelogen und korrekt die leere Property des einen Bildes auf das andere übertragen.
      Nur schade, daß wir das nicht sehen können! 😀

      Gruß

      Klaus

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