AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi TGIFImage dynamisch erzeugen, um Speicher zu schonen
Thema durchsuchen
Ansicht
Themen-Optionen

TGIFImage dynamisch erzeugen, um Speicher zu schonen

Ein Thema von necromundo · begonnen am 31. Jan 2005 · letzter Beitrag vom 31. Jan 2005
Antwort Antwort
necromundo

Registriert seit: 31. Jan 2005
26 Beiträge
 
#1

TGIFImage dynamisch erzeugen, um Speicher zu schonen

  Alt 31. Jan 2005, 16:32
hallo!

ich bin grade dabei, für meinen mp3rechner mit touchscreen ein programm im lcars-design zu schreiben, was aber recht grafikaufwendig ist!
ich versuche, das so zu realisieren, dass bei jeder aktion andere buttons und so angezeigt werden und um den speicher zu schonen wollte ich die bilder dynamisch als objekte erzeugen, wenn sie gebraucht werden und vernichten, wenn sie nicht mehr gebraucht werden!

es sind viele animationen drin, daher habe ich hier die klasse TGIFImage verwendet!

jetzt zu meiner eigentlichen frage:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var gifbild: TGIFImage;
begin
  gifbild := TGIFImage.create;
  gifbild.LoadFromFile('test.gif');
  gifbild.AutoSize := true;
end;
wenn ich diesen code ausführe, sagt mir der compiler, dass TGIFImage.create weitere parameter erwartet, und zwar ein TComponent!
was kommt dahin? fehler gibt es nicht wirklich bei der ausführung, egal ob ich nun "nil", "form1" oder sonst ein objekt da rein schreibe!

ausserdem hab ich schon bei vielen quellen im netz gesehen, dass der konstruktor auch ohne parameter funktioniert hat! hab ich ne andere version davon?

bitte helft mir, ich verzweifel!

ciao, Benny
  Mit Zitat antworten Zitat
Dax
(Gast)

n/a Beiträge
 
#2

Re: TGIFImage dynamisch erzeugen, um Speicher zu schonen

  Alt 31. Jan 2005, 16:38
Wenns doch mit nil und Form1 funktioniert.. Warum machst du's dann nicht so? Die Komponenten, die du im INet gefunden hast, waren bestimmt nur von TObject abgeleitet statt von TComponent.. Im großen und ganzen macht es aber keinen Unterschied
  Mit Zitat antworten Zitat
BKempf

Registriert seit: 1. Jun 2004
103 Beiträge
 
Delphi 6 Enterprise
 
#3

Re: TGIFImage dynamisch erzeugen, um Speicher zu schonen

  Alt 31. Jan 2005, 16:39
Evtl. wird noch ein Owner erwartet, also eine Komponente, die der Besitzer des neuen Bildes sein soll. Der kann üblicherweise auch nil sein.
The problem with troubleshooting is that sometimes the trouble shoots back.
  Mit Zitat antworten Zitat
necromundo

Registriert seit: 31. Jan 2005
26 Beiträge
 
#4

Re: TGIFImage dynamisch erzeugen, um Speicher zu schonen

  Alt 31. Jan 2005, 16:50
hey!

hab das problem schon wieder selbst gelöst! ich frag mich langsam, warum ich immer wieder in foren schreibe, wenn ichs nachher doch hinkriege!

also ich habe mir mal ein paar beispiele vom autor der klasse angesehen und festgestellt, dass also Owner da "self" reinkommt, ich schätze, das bezieht sich auf das formblatt, oder?
naja, und ein parent sollte man noch angeben, damit der compiler wohl weiss, wo das ding hin soll!

im endeffekt klappts dann so:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var gifbild: TGIFImage;
begin
  gifbild := TGIFImage.Create(self);
  gifbild.Parent := Form1;
  gifbild.Align := alClient;
  gifbild.LoadFromFile('test.gif');
  gifbild.AutoSize := true;
end;
@dax: nee, es gab ja nur keine fehler, das bild wurde aber leider auch nicht angezeigt!

ciao, Benny
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:51 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz