Animierte Gif zum "bewegen" bekommen

Für Probleme bezüglich Grafik, Audio, GL, ACS, ...
Antworten
echochrome
Beiträge: 11
Registriert: Sa 22. Jun 2013, 15:21

Animierte Gif zum "bewegen" bekommen

Beitrag von echochrome »

Hallo.

ich bin gerade in einer heißen Phase von meinem Projekt.
Ich baue Ein Projekt mit dem Schülern die Sortierverfahren beigebracht werden sollen und wie geht dass einfacher als mit einem animierten GIF?

Gesagt getan, GIFs existieren, eingebunden kein Problem, beim starten wird es auch geladen, aber es bewegt sich nichts. Beim durchforsten diverser Foren ist mir aufgefallen dass ich ein Package downloaden und installieren muss. Entweder GIFImage, BGraBitmap oder GraphicEx. Zu finden sind diese jedoch schwer und es wird nirgendswo richtig deutlich beschrieben wie man dass installiert. Nun da ich nicht so verloren bin am Computer habe ich es letztendlich auch hinbekommen.

Jedoch besteht dass Problem immernoch, GIF ist zu sehen, Animation nicht :evil:
Dann habe ich bemerkt, zieht man während das GIF zu sehen ist, dass Fenster groß und klein, ist auf einmal die Animation zu sehen.

BITTE HELFT MIR, wie bekomme ich es hin ohne mit der Maus das Fenster zu verändern.

Code: Alles auswählen

 
uses BGRAAnimatedGif;
[...]
 Image1.Picture.LoadFromFile('Bildmaterial/Bubble-sort.gif');
  Form9.Doublebuffered := True; 
so habe ich es eingebunden.

Danke im Vorfeld.

Antrepolit
Beiträge: 340
Registriert: Di 12. Sep 2006, 08:57
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Kontaktdaten:

Re: Animierte Gif zum "bewegen" bekommen

Beitrag von Antrepolit »

echochrome hat geschrieben:Hallo.
(...)
Dann habe ich bemerkt, zieht man während das GIF zu sehen ist, dass Fenster groß und klein, ist auf einmal die Animation zu sehen.

BITTE HELFT MIR, wie bekomme ich es hin ohne mit der Maus das Fenster zu verändern.
(...)
Das ist doch nun recht einfach:
Einen Timer auf die Form ziehen, der Invalidate aufruft. Wer oder was soll das Bild auch neuzeichnen ohne Timer?
Grüße, Antrepolit

care only if your os is really burning

echochrome
Beiträge: 11
Registriert: Sa 22. Jun 2013, 15:21

Re: Animierte Gif zum "bewegen" bekommen

Beitrag von echochrome »

Danke erstmal für deinen Super Tipp und vorallem deine schnelle Antwort.

Allerdings habe ich keine Ahnung wie das aussehen soll. Da ich mit Timer noch (nie) gearbeitet habe.

creed steiger
Beiträge: 958
Registriert: Mo 11. Sep 2006, 22:56

Re: Animierte Gif zum "bewegen" bekommen

Beitrag von creed steiger »

schau mal ob das noch aktuell ist

http://www.youtube.com/watch?v=EVk28wzHNII

MAC
Beiträge: 770
Registriert: Sa 21. Feb 2009, 13:46
OS, Lazarus, FPC: Windows 7 (L 1.3 Built 43666 FPC 2.6.2)
CPU-Target: 32Bit

Re: Animierte Gif zum "bewegen" bekommen

Beitrag von MAC »

Teste er doch erstmal mit einem Button.
Ein Button welcher dann Image1.Invalidate aufruft. Sollte das klappen musst du nur noch ein Timer auf die Form legen, Wählst das Interval aus (in ms) und dann wird alle x Missisekunden das event des Timers ausgeführt. Dann kannst du das Image1.Invalidate dareinschreiben und den Testbutton wieder löschen... Zu not kann man ja einfach Google wie man nen Timer verwendet :)

Code: Alles auswählen

Signatur := nil;

echochrome
Beiträge: 11
Registriert: Sa 22. Jun 2013, 15:21

Re: Animierte Gif zum "bewegen" bekommen

Beitrag von echochrome »

Jetzt fühle ich mich total dumm :)
War viel zu leicht, als dass es ein Problem hätte darstellen dürfen.

Danke nochmal.

Soner
Beiträge: 726
Registriert: Do 27. Sep 2012, 00:07
OS, Lazarus, FPC: Win10Pro-64Bit, Immer letzte Lazarus Release mit SVN-Fixes
CPU-Target: x86_64-win64
Wohnort: Hamburg

Re: Animierte Gif zum "bewegen" bekommen

Beitrag von Soner »

Es gibt eine Komponente wie du es dir vorstellst. Es funktioniert genauso wie TImage, komponente drauf, animated true setzen, dann läuft alles automatisch. Hier ist es:
http://wiki.freepascal.org/Wile64

Edit:
Anlage gelöscht wegen Lizenz. Ich muss Lizenz schauen bevor ich die Änderungen einfach weitergebe.

Soner
Beiträge: 726
Registriert: Do 27. Sep 2012, 00:07
OS, Lazarus, FPC: Win10Pro-64Bit, Immer letzte Lazarus Release mit SVN-Fixes
CPU-Target: x86_64-win64
Wohnort: Hamburg

Re: Animierte Gif zum "bewegen" bekommen

Beitrag von Soner »

Jetzt lade ich meine Änderungen wieder hoch, weil Verteilung laut Lizenz (steht in gifanim.pas) erlaubt ist.
Es muß noch Komponentenregistierung-Funktion getrennt werden, damit man in sein Programm kein tote Code hat.
Dateianhänge
laz_gifanim_v-soner.zip
Gifanim-Komponent mit kleine Änderungen und Demo
(141.53 KiB) 190-mal heruntergeladen

Antworten