procedure TfrmPWeiHu.ADODataSet1AfterScroll(DataSet: TDataSet);
var
MyJpeg:TJpegImage;
MyStm:TMemoryStream;
begin
if not ADODataSet1.FieldByName('pic').IsNull then
begin
try
MyJpeg:=TJpegImage.Create;
MyStm:=TMemoryStream.Create;
MyStm.Clear;
TBlobField(ADODataSet1.FieldByName('pic')).SaveToStream(MyStm);
MyStm.Position:=0;
MyJpeg.LoadFromStream(MyStm);
FootImage.Picture.BitMap.Assign(MyJpeg);
finally
MyJpeg.Free;
MyStm.Free;
end;
end;
end;
procedure TfrmPWeiHu.FootImageDblClick(Sender: TObject);
var
TempStream:TMemoryStream;
JpgPic:TJpegImage;
s:String;
begin
try
JpgPic:=TJpegImage.Create;
TempStream:=TMemoryStream.Create;
TempStream.Clear;
if OpenDialog1.Execute then
begin
ADODataSet1.Append;
JpgPic.LoadFromFile(OpenDialog1.FileName);
FootImage.Picture.Bitmap.Assign(Jpgpic);
JpgPic.SaveToStream(TempStream);
TBlobField(ADODataSet1.FieldByName('pic')).LoadFromStream(tempStream);
ADODataSet1.Post;
end;
finally
JpgPic.Free;
TempStream.Free;
end;
end;
dbimage1对应你的图片字段;
dbimage1.loadfromfile(yourfilename);
dbimage1.copytoclipboard;
dbimage1.pastefromclipboard;
ok 大功告成!简单吧!
1。好像dbimage1没有loadfromfile这个方法
2。还有你的yourfilename从哪里来
3。如果用LoadFromFile(OpenDialog1.FileName);前提还是1
image1.picture.loadfromfile(opendialog1.filename);
dbimage1.picture:=image1.picture;
我一直这样用,很好用的!
tide_liu(龙飞九天) 的方法中漏了picture。
不过,如果想在Database Desktop就增加图像数据,怎么办?
去下载 IbExpert 软件
BlobField1.Assign(GraphicField1);
{Copy strings in a TMemo to a TMemoField}
MemoField1.Assign(Memo1.Lines);
BlobField1.Assign(GraphicField1);
{Copy strings in a TMemo to a TMemoField}
MemoField1.Assign(Memo1.Lines);
//保存
procedure TForm1.Button1Click(Sender: TObject);
var
MyJPEG : TJPEGImage;
MS: TMemoryStream;
begin
MyJPEG := TJPEGImage.Create;
try
with MyJPEG do
begin
Assign(Image.Picture.Graphic);
MS:=TMemoryStream.create;
SaveToStream(MS);
MS.Position:=0;
Table1.Edit;
TBlobField(Table1.FieldbyName('Image')).LoadFromStream(MS);
Table1.Post;
messagebox(getactivewindow(),'图像保存完毕!','保存',mb_ok);
end;
finally
MyJPEG.Free;
end;
end; //读取
procedure TForm1.Button1Click(Sender: TObject);
var tempstream:TStringStream;
tempjpeg:TJPEGImage;
begin
try
tempstream:=TStringStream.Create(' ');
TBlobField(Query1.FieldByName('Image')).SaveToStream(tempstream);
tempstream.Position:=0;
tempjpeg:=TJPEGImage.Create;
tempjpeg.LoadFromStream(tempstream);
DBImage1.Picture.Bitmap.Assign(tempjpeg);
finally
tempstream.Free;
tempjpeg.Free;
end;
end;
以上是处理JPEG图片格式的