如果是其他的也可以,.jpg先在uses后加上 jpeg在from放一个dbimage. procedure TForm1.Button1Click(Sender: TObject);
begin
if OpenPictureDialog1.Execute then
begin
with ADOTable1 do
begin
Append;
(OpenPictureDialog1.FileName); Post;
end;
end;
end;
begin
if OpenPictureDialog1.Execute then
begin
with ADOTable1 do
begin
Append;
(OpenPictureDialog1.FileName); Post;
end;
end;
end;
use jpeg;
procedure TForm1.DBImage1DblClick(Sender: TObject);
var filepath,extname:string ;
jpeg:Tjpegimage;begin
query1.RequestLive:=true;
if openpicturedialog1.Execute then
begin
filepath:=openpicturedialog1.FileName;
if filepath<>'' then
extname:=extractfileext(filepath);
if (uppercase(extname)='.JPEG') or (uppercase(extname)='.JPG') then
begin
query1.Edit;
jpeg:=Tjpegimage.Create;
jpeg.LoadFromFile(filepath);
dbimage1.Picture.Graphic.Assign(jpeg);
end
else
begin
query1.edit;
query1graphic.LoadFromFile(filepath);
end;
query1.Post;
end;
end;
// strExtName取得的图片后缀名。
var
Jpg:TJpegImage;
strExtName:string;
AFormat:Word;
AData,APalette:THandle;
Begin if strExtName<>'BMP' then
begin
Jpg:=TJpegImage.Create;
try
Jpg.LoadFromFile(OpnPicDlgWDLX.FileName);
Jpg.SaveToClipboardFormat(AFormat,AData,APalette);
imgTBD.Picture.LoadFromClipboardFormat(AFormat,AData,APalette);
application.ProcessMessages;
finally
Jpg.Free;
end;
end
我试过是可以!
(Adoquery1.FieldByName('图片') as TBlobField).assign(image1.picture.Bitmap)