Entwickler-Ecke

Internet / Netzwerk - Bild herunter laden und anzeigen


lemming - Fr 15.08.03 12:46
Titel: Bild herunter laden und anzeigen
Hi!

Ich habe hier diesen Code:


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
uses
  Jpeg, IdHTTP, ...
.
.
.
var
  strBild: TStream;
.
.
.
begin
   strBild := TStream.Create;
.
.
.
      try
        IdHTTP.Get(sTemp, strBild);
      finally
        ImagePic.Picture.Bitmap.LoadFromStream(strBild);
        //strBild.Free;
      end;


Damit soll ein Bild von einer Internetseite herunter geladen werden und in einem Image angezeigt werden. Leider passiert gar nichts. Das Image bleibt leer.

Was mache ich falsch?

-lemming


Udontknow - Fr 15.08.03 13:57

Hi!

Du erstellst ein Objekt der abstrakten Basisklasse TStream, das ist nicht zulässig. Du darfst zwar Variablen vom Typ TStream benutzen, niemals aber TStream.Create aufrufen. Schaue dir mal ein paar Infos zur Vererbung und Polymorphie an, wenn du näheres wissen willst.

Ersetze TStream

Quelltext
1:
strBild := TStream.Create;                    

durch einen Stream, dessen Daten in deinem Hauptspeicher abgelegt werden:

Quelltext
1:
strBild := TMemoryStream.Create;                    


Cu, :)
Udontknow

PS: Evtl noch nach dem idHttp.Get den Befehl "StrBild.Position:=0" einfügen.