Einzelnen Beitrag anzeigen

Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#4

AW: Verständnisproblem mit streams

  Alt 2. Jan 2011, 17:09
Geht beides, der Fehler muß außerhalb liegen.
Ich würde die Basisklasse TStream übergeben....

Delphi-Quellcode:
function SetPngPic(Image : TImage; TheStream : TStream) : boolean;
var
_PNGImage : TPNGImage;
Stream : TMemoryStream;
begin
try
Result := true;
Stream := TMemoryStream.Create;
_PNGImage := TPNGImage.Create;
try
Stream.LoadFromStream(TheStream);
_PNGImage.LoadFromStream(Stream);
   Image.Picture.Assign(_PNGImage);
except
Result := false;
end;
finally
_PNGImage.Free;
Stream.Free;
end;
end;

function SetPngPic2(Image : TImage; TheStream : TStream) : boolean;
var
_PNGImage : TPNGImage;
begin
try
Result := true;
_PNGImage := TPNGImage.Create;
try
_PNGImage.LoadFromStream(TheStream);
   Image.Picture.Assign(_PNGImage);
except
Result := false;
end;
finally
_PNGImage.Free;
end; end;


procedure TForm1.Button1Click(Sender: TObject);
var
  s:TFileStream;
begin
  s :=TFileStream.Create('C:\Bilder\h2o1.png',fmOpenRead );
  try
  //SetPngPic(Image1,s);
  SetPngPic2(Image1,s);
  finally
  s.Free;
  end;
end;
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
  Mit Zitat antworten Zitat