Hi, ich möchte ein PNG Image von einen Server laden. Das Bild soll Angezeigt werden, ohne das ich es zwischenspeichern muss. Das Bild ändert sich jedesmal, wenn ich in der Itemlist einen Eintrag ändere. Diesen Code habe ich bis jetzt:
Delphi-Quellcode:
procedure TForm8.MaplistSelectItem(Sender: TObject; Item: TListItem;
Selected: Boolean);
var
Stream : TMemoryStream;
PNG : TPNGImage;
begin
if Maplist.Selected <> nil then
begin
Stream := TMemoryStream.Create;
Downloadstatus.Get('http://redshakal.de/kknd/maps/minimap/'+Maplist.Selected.Caption+'.png', Stream);
Stream.Position := 0;
PNG := TPNGImage.Create;
Minimap.Picture.Assign(PNG);
PNG.Free;
Stream.free;
end
else
begin
Exit;
end;
end;
Der Code bringt folgenden Fehler:
---------------------------
Debugger Exception Notification
---------------------------
Project Project1.exe raised exception class EPNGHeaderNotPresent with message 'This operation is not valid because the current image contains no valid header.'.
---------------------------
Break Continue Help
---------------------------
Woran kann das liegen?
Der Fehler liegt in der Zeile:
Minimap.Picture.Assign(PNG);
EDIT: Hat sich erledigt hab den Fehler selbst gefunden. Habe die Zeile
PNG.LoadFromStream(Stream); vergessen