如何用Timage显示数据库中存储的图片(100分)

  • 主题发起人 主题发起人 blacksheep
  • 开始时间 开始时间
B

blacksheep

Unregistered / Unconfirmed
GUEST, unregistred user!
部分代码如下
procedure TForm1.Button1Click(Sender: TObject);
var
sfilename:string;
begin
if (opendialog1.Execute) then
begin
sfilename:=opendialog1.FileName;
adodataset1.Edit;
adodataset1.FieldByName('jj').asstring:=toto(sfilename);
adodataset1.Post;
end;
end;

其中toto是一个函数如下:
function tform1.toto(const filename:string):string;
begin
with tfilestream.Create(filename,fmopenread) do
try
setlength(result,size);
read(pointer(result)^,size);
finally
free;
end;
end;
这样将图片以长二进制数保存在acess数据库的jj字段中。
但是我想将它取出来,并用Timage控件将它显示出来,不知道用什么方法。
 
图像field.savetofile('filename')
Timeag.loadfromfile('filename')
即可
 
你把图像字段设为ole对象类型就不要再转换好可以直接存取的
 
用数据流的方式进行,不要用其他的方式.
 
我是这样用的,你试试.
procedure LoadImage(image:TImage;Field:TField);
begin
image.picture.assign(field);
end;
 
这个方法可以,接受答案了
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
786
import
I
I
回复
0
查看
624
import
I
后退
顶部