Benutzer-Werkzeuge

Webseiten-Werkzeuge


Seitenleiste

Multimedia

k23:k23.4.5:start3

23.3.5 Moviebox

GIF-Bild

Abbildung 23.3.5.1: GIF-Bild auf der Website http://gambasdoc.org/help/comp/gb.qt/moviebox

Diese Klasse (GB2: MovieBox (gb.qt), GB3:MovieBox (gb.qt4) ) bietet ein Steuerelement, das animierte GIF-Bilder oder MNG-Bilder anzeigt. GIF-Bilder oder MNG-Bilder bestehen aus mehreren Einzelbildern, die wie bei einem Film hintereinander für eine einstellbare Zeitdauer angezeigt werden.

  • GIF – Graphics Interchange Format
  • MNG – Multiple-Image Network Graphics

23.3.5.1 Eigenschaften

Das sind die wichtigsten Eigenschaften der Container-Komponente Moviebox, die Sie abfragen oder setzen können:

  • Property Border AS Integer
    Sie können einen Rand (Etched, Plain, Raised oder Sunken) für die Moviebox festlegen oder auf einen Rand (None) verzichten
  • Property Path AS String
    Pfad zum GIF-Bild oder zum MNG-Bild
  • Property Playing AS Boolean
    Mit dem Festlegen dieser Eigenschaft starten oder stoppen Sie die Animation.

23.3.5.2 Methoden

Die Methode .Rewind setzt den Film auf den Anfang zurück. Sie können nach einem Stopp eines Filmes den Film entweder weiterlaufen lassen oder ihn neu starten.

23.3.5.3 Projekt

In dem folgenden Programm können Sie animierte Grafiken in zwei unterschiedlichen Formaten starten, stoppen und weiterlaufen lassen oder den Film auf das erste Bild zurücksetzen. Das Zurücksetzen erkennt man aber nur dann, wenn der Film eine Länge von einigen Sekunden hat. Dem Projekt ist ein Film legolok.gif beigelegt, den Sie für eigene Experimente mit der Moviebox nutzen können.

Moviebox

Abbildung 23.3.5.2: Moviebox mit 2 Bildformaten

23.3.5.4 Quelltext

' Gambas class file 
 
PUBLIC SUB Form_Open() 
  FMain.Center 
  FMain.Border = 1  
  MovieBox1.Path = "Images/tanzen.gif" 
  MovieBox2.Path = "Images/tanzen.mng" 
  MovieBox1.Visible = TRUE 
  MovieBox2.Visible = TRUE 
  MovieBox1.Border = Border.Sunken
  MovieBox2.Border = Border.Raised ' … der optische Unterschied ist minimal 
  StartAnimation()  
END ' Form_Open() 
 
PRIVATE SUB StartAnimation() 
  MovieBox1.Playing = TRUE 
  MovieBox2.Playing = TRUE  
  btnStart.Enabled = FALSE 
END ' StartAnimation() 
 
PUBLIC SUB btnStart_Click() 
  IF checkBox1.Value = TRUE THEN MovieBox1.Rewind
  MovieBox1.Playing = TRUE 
  MovieBox2.Playing = TRUE 
  btnStart.Enabled = FALSE 
  btnStopp.Enabled = TRUE 
END ' Start 
 
PUBLIC SUB btnStopp_Click() 
  MovieBox1.Playing = FALSE 
  MovieBox2.Playing = FALSE 
  btnStopp.Enabled = FALSE 
  btnStart.Enabled = TRUE 
END ' Stopp 
 
PUBLIC SUB btnClose_Click() 
  btnStopp_Click() 
  btnStart.Enabled = FALSE 
  WAIT 0.8 
  FMain.Close 
END ' Close_Click()

23.3.5.5 Hinweise

Beim Kompilieren des Programms erhalten Sie in der IDE von Gambas in der Konsole diverse Fehlermeldungen, die offensichtlich mit dem Format der animierten MNG-Bilder zu tun haben:

MNG error 4: Encountered unexpected end-of-file; chunk vpAg; subcode 0:0
MNG error 11: Function is invalid at this point; chunk vpAg; subcode 0:0

Mit dem Programm convert können Sie aus mehreren Einzelbildern in einem Verzeichnis einen Film im Format MNG herstellen oder ein Bild im GIF-Format in das MNG-Format – ohne eine Fehlermeldung bei korrekter Syntax – konvertieren:

hans@linux:~$ convert -delay 10 b-*.png film.mng
hans@linux:~$ animate film.mng

hans@linux:~$ convert /home/hans/bild.gif /home/hans/bild.mng
hans@linux:~$ animate film.mng

Offensichtlich konvertiert das Programm convert NICHT korrekt in das MNG-Format, das weder W3C-konform ist noch sonst unterstützt wird – auch nicht vom Firefox. Das Programm Gimp kann mit dem MNG-Format ebenfalls nichts anfangen, wie folgende Fehlermeldung zeigt:

Fehlermeldung

Abbildung 23.3.5.3: Fehlermeldung GIMP

23.3.5.6 Download

Die Website verwendet zwei temporäre Session-Cookies. Diese technisch notwendigen Cookies werden gelöscht, wenn der Web-Browser geschlossen wird! Informationen zu Cookies erhalten Sie in der Datenschutzerklärung.
k23/k23.4.5/start3.txt · Zuletzt geändert: 20.06.2016 (Externe Bearbeitung)

Seiten-Werkzeuge