搞定了图片在数据库的读取问题, 大家也看看.

web700 2004-03-15 11:43:06
完整的代码如下:

//这个是保存的代码
procedure TForm1.Button1Click(Sender: TObject);
var
MyJPEG : TJPEGImage;
MS: TMemoryStream;

begin
if opendialog1.Execute then
begin
MyJPEG := TJPEGImage.Create;
try
with MyJPEG do
begin
image1.Picture.LoadFromFile(opendialog1.FileName);
Assign(Image1.Picture.Graphic);
MS:=TMemoryStream.create;
SaveToStream(MS);
MS.Position:=0;
adoTable1.append;
TBlobField(adoTable1.FieldbyName('picture')).LoadFromStream(MS);
adoTable1.Post;
messagebox(getactivewindow(),'图像保存完毕!','保存',mb_ok);
end;
finally
MyJPEG.Free;
end;

end;
end;


//这个是读取的代码
procedure TForm1.Button2Click(Sender: TObject);
var tempstream:TmemoryStream; // tempstream:tstringstream 也可以
tempjpeg:TJPEGImage;

begin
try
tempstream:=TmemoryStream.Create(); // tempstream:=tmemorystream.create(' ');
TBlobField(adotable1.FieldByName('picture')).SaveToStream(tempstream);
tempstream.Position:=0;
tempjpeg:=TJPEGImage.Create;
tempjpeg.LoadFromStream(tempstream);
DBImage1.Picture.Bitmap.Assign(tempjpeg);
finally
tempstream.Free;
tempjpeg.Free;
end;

end;

end.


//可能这个对高手来说算个啥, 但是你我这样的人菜人还真是费了手脚.
请高人指教.
...全文
65 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
killer2008 2004-05-08
  • 打赏
  • 举报
回复
读取代码有问题,adotable要先数据库连接
bestilemon 2004-04-11
  • 打赏
  • 举报
回复
帮了我大忙了!
谢谢!
rocker1218 2004-04-05
  • 打赏
  • 举报
回复
支持哦!
btdjw 2004-03-19
  • 打赏
  • 举报
回复
我也支持哦
jiangjian0427 2004-03-15
  • 打赏
  • 举报
回复
up
startjoy 2004-03-15
  • 打赏
  • 举报
回复
支持!!!

829

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧