我怎么把数据库的图片用image显示,谢了先
var
imagestream: TMemoryStream;
jpg: TJPEGImage;begin
imagestream := TMemoryStream.Create;
jpg := TJPEGImage.Create;
try
TBlobField(ADODataSet1.FieldByName('aaa')).SaveToStream(imagestream);
imagestream.Position := 0;
imagestream.SaveToFile('a.jpg');
jpg.LoadFromStream(imagestream);
//jpg.SaveToFile('c:\a.jpg');
Image1.Picture.LoadFromFile('c:\a.jpg');
finally
imagestream.Free;
end;
end;
我已引用jpeg单元可是一直有错5555555
var
imagestream: TMemoryStream;
jpg: TJPEGImage;begin
imagestream := TMemoryStream.Create;
jpg := TJPEGImage.Create;
try
TBlobField(ADODataSet1.FieldByName('aaa')).SaveToStream(imagestream);
imagestream.Position := 0;
imagestream.SaveToFile('a.jpg');
jpg.LoadFromStream(imagestream);
//jpg.SaveToFile('c:\a.jpg');
Image1.Picture.LoadFromFile('c:\a.jpg');
finally
imagestream.Free;
end;
end;
我已引用jpeg单元可是一直有错5555555
imagestream: TMemoryStream;
jpg: TJPEGImage;begin
imagestream := TMemoryStream.Create;
jpg := TJPEGImage.Create;
try
TBlobField(ADODataSet1.FieldByName('aaa')).SaveToStream(imagestream);
imagestream.Position := 0;
imagestream.SaveToFile('a.jpg');
jpg.LoadFromStream(imagestream);
//jpg.SaveToFile('c:\a.jpg');
sleep(300);
Image1.Picture.LoadFromFile('c:\a.jpg');
finally
imagestream.Free;
end;
end;
怎么样???你得等imagestream写完文件才行啊
var
str1:Tmemorystream;
begin
str1:=Tmemorystream.Create;
str1.Position:=0;
Tblobfield(adoquery3.FieldByName('正文')).savetostream(str1);
str1.SaveToFile('c:\page.jpg');
str1.Free;
image1.Picture.LoadFromFile('c:\page.jpg');
statictext20.Caption:='共'+inttostr(adoquery3.RecordCount)+'页正文,当前为'+inttostr(adoquery3.recno)+'页';
image1.Width:=image1.Picture.Graphic.Width;
image1.Stretch:=true;
end;
当然,在delphi中,Timage的picture属性默认的图象文件是.bmp格式,但是为了处理方便以及存储方面的考虑,我们使用的图片格式是.jpg,因此需要在unit中添加jpeg单元,这样Timage控件就可以读.jpg格式的图片了。
var
imagestream: TMemoryStream;
jpg: TJPEGImage;begin
imagestream := TMemoryStream.Create;
jpg := TJPEGImage.Create;
try
TBlobField(ADODataSet1.FieldByName('aaa')).SaveToStream(imagestream);
imagestream.Position := 0;
//imagestream.SaveToFile('c:\a.jpg');
Image1.Picture.Bitmap.LoadFromStream(imagestream);
finally
imagestream.Free;
end;
谢谢各位了