我有以下代码,但它不会在TImage中显示jpg:
sf := TfrmSplash.Create(nil);
ms := TMemoryStream.Create;
try
bf := TBlobField(dbfuncs.tblBlobs.FieldByName('BBlob'));
bf.SaveToStream(ms);
ms.Position := 0;
sf.imgDisplay.Picture.Graphic.LoadFromStream(ms);
sf.Show;
Sleep(2000);
finally
ms.Free;
sf.Free;
end;
为什么这不起作用?我在两种形式的使用条款中都有jpeg。但图像中没有显示任何内容......
答案 0 :(得分:2)
您是否必须首先将其流式传输到TJPEG中,然后将其分配到TImage中?我这里没有方便的代码(虽然可以在以后详细说明)但是当我过去这样做时,我很确定我必须做类似的事情
MyJPeg.LoadFromStream
接着是
MyPicture.Graphic.Bitmap.Assign(MyJPeg)...?
答案 1 :(得分:2)
uses
... DB;
TBlobField(dbfuncs.tblBlobs.FieldByName('BBlob')).LoadFromFile('file name');
TBlobField(dbfuncs.tblBlobs.FieldByName('BBlob')).LoadFromStream();