谁能告诉我怎么怎么数据库中进行对jpeg图片的存取 ?(100分)

  • 主题发起人 主题发起人 night
  • 开始时间 开始时间
N

night

Unregistered / Unconfirmed
GUEST, unregistred user!
我听说用ole能实现
单具体方法怎么做?
请各位指教
 
使用DBImage控件,添加一个TFilePictureDialog控件
当用户追加新纪录时候,就可以插入图片了。
procedure TForm1.DBImage1Click(Sender: TObject);
begin
if OpenPictureDialog1.Execute=true then
DBImage1.Picture.LoadFromFile(OpenPictureDialog1.FileName);
end;

 
这样不行
这样存储的还是bmp格式的图片
我是想用ole把jpeg格式的图片存进去
 
用stream怎么用呀
 
将图片写入数据库(access库)
void __fastcall TForm1::Button1Click(TObject *Sender)
{
if (OpenDialog1->Execute())
{ADOTable1->DisableControls();
ADOTable1->Append();
ADOTable1pic->LoadFromFile(OpenDialog1->FileName);
ADOTable1name->Value=OpenDialog1->FileName;
ADOTable1->Post();
ADOTable1->EnableControls();
}
}
从数据库中读取图片
void __fastcall TForm1::DataSource1DataChange(TObject *Sender,
TField *Field)
{
TMemoryStream *s = new TMemoryStream();
ADOTable1pic->SaveToStream(s);
s->Position=0; //****流首位置必须为零***
TJPEGImage *jp = new TJPEGImage();
jp->LoadFromStream(s);
Image1->Picture->Bitmap->Assign(jp);
delete jp;
delete s;
}
 
这种方法只能存储bmp格式的图片
我看见一些资料上说jpeg格式的图片和word文档一样作为一种特殊的文件在数据库中进行存取要用ole
有人会吗?
上面几位大哥给的答案我都试过都只是存储bmp格式的
 

wangxd仁兄的方法可以
但下面的读取的方法我就看不懂了
谢谢
 
看看
http://www.delphibbs.com/delphibbs/dispq.asp?lid=949021
吧,很清楚的。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
2K
DelphiTeacher的专栏
D
后退
顶部