怎样把Access数据库中jpeg格式的图片显示出来???????急救(50分)

  • 主题发起人 主题发起人 rickylin
  • 开始时间 开始时间
R

rickylin

Unregistered / Unconfirmed
GUEST, unregistred user!
我用了网上这个方法不行,总是提示"jpeg error #41"或者"jpeg error #50".
下面的这段代码是在按了“查看图像”按钮之后所触发的事件处理程序:
procedure TForm1.Button1Click(Sender: TObject);
var tempstream:TStringStream;
tempjpeg:TJPEGImage;
begin
try
tempstream:=TStringStream.Create(' ');
TBlobField(Query1.FieldByName('Image')).SaveToStream(tempstream);
tempstream.Position:=0;
tempjpeg:=TJPEGImage.Create;
tempjpeg.LoadFromStream(tempstream);
DBImage1.Picture.Bitmap.Assign(tempjpeg);
finally
tempstream.Free;
tempjpeg.Free;
end;
end;
 
我以前的例子,显示图片的,自己看吧,一点都没改过。

procedure TForm1.Button4Click(Sender: TObject);
var
bs: tadoblobstream;
myimage: tjpegimage;
begin
if adoquery1.FieldByName('a3').AsInteger=2 then 表示为图片
begin
myimage:=tjpegimage.Create;
try
bs:= tadoblobstream.Create(tblobfield(adoquery1.FieldByName('a2')),bmread);

try
myimage.LoadFromStream(bs);
image1.Picture.Assign(myimage);
finally
bs.Free;
end;

finally
myimage.Free;
end;
memo1.Visible:=false;
end;
end;
 
后退
顶部