后台是sql server 2000,怎样进行bmp图片的存取,尤其是较大的图片
解决方案 »
- delphi idhttp发送http头
- 一个简单DLL调用窗体问题??
- 请教reportbuilder报表控件问题
- 请问 cxgrid 控件在使用 多级 显示时, 如何用代码 展开 所有的 折合行 ??????????
- websnap编程问题
- 关于query的问题,排序问题 菜鸟问题
- 怎样快速复制一张paradox表创建到一个access数据库,并增加一个field?
- 关于使用Realplayer G2控件播放rm文件的问题
- 请教:图形染色的问题
- 请问第三方rxlibford7如何安装?
- 如何显示和发送html邮件,用indy控件?
- 快要疯掉了,谁能告诉我如何收发html邮件?linux2001请进,高分报答!
var
ImageField:TField;
Picture:TPicture;
begin
if OpenPicDlg.Execute then
Begin
with DataSource.DataSet do
try
Query.Edit;
ImageField := FindField('Pic');
if ImageField <> nil then
begin
Picture := TPicture.Create;
try
Query.Edit;
Picture.LoadFromFile(OpenPicDlg.FileName);
if Picture.Graphic is TBitmap then
ImageField.Assign(Picture)
else
SaveGraphicToBlobField(Picture.Graphic, ImageField);
finally
Picture.Free;
end;
end;
except
end;
End;
end;procedure SaveGraphicToBlobField(AGraphic: TGraphic; AField: TField);
var
BlobStream: TStream;
begin
if AField is TBlobField then
with AField as TBlobField do
begin
{$IFNDEF DELPHI3}
BlobStream := TBlobStream.Create(AField as TBlobField, bmWrite);
{$ELSE}
BlobStream := DataSet.CreateBlobStream(AField, bmWrite);
{$ENDIF}
try
AGraphic.SaveToStream(BlobStream);
finally
BlobStream.Free;
end;
end;
end;