Chinaunix首页 | 论坛 | 博客
  • 博客访问: 16496200
  • 博文数量: 5645
  • 博客积分: 9880
  • 博客等级: 中将
  • 技术积分: 68081
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-28 13:35
文章分类

全部博文(5645)

文章存档

2008年(5645)

我的朋友

分类:

2008-04-28 20:49:35

下载本文示例代码
天极IT资讯短信服务 电脑小技巧 function check4() { if (dn.mobile.value.length!=11) { alert("手机号码不正确!"); dn.mobile.focus(); return false; } return true; } 资费:包月5元手机: 介绍:细处着手,巧处用功。高手和菜鸟之间的差别就是:高手什么都知道,菜鸟知道一些。电脑小技巧收集最新奇招高招,让你轻松踏上高手之路。   在《Delphi存取图像完整解决方案》一文中,笔者提供了一种DELPHI存取JPEG、BMP图像到数据库的解决方案,虽然它适用于ACCESS和SQL数据库,但它并不适用于所有数据库(比如PARADOX数据库中的GRAPHIC图像字段就不能采用该方法存取图像数据),下文将介绍DELPHI利用ASSIGN方法存取JPEG、BMP图像到数据库的另一解决方案来进行补充完善。演示数据库结构和窗口界面设计同前文,不再重述,将单元的相应程序代码作如下更换:  1. 图像数据的选择及保存 procedure Tform1.selectimageClick(Sender: TObject); //选择图像beginif openpicturedialog1.Execute thenimage1.Picture.LoadFromFile(openpicturedialog1.FileName );end;procedure Tform1.savetodbClick(Sender: TObject); //保存图像到数据库varext:string;beginif image1.picture.Graphic <> nil then //避免image1中无图像保存出错beginadotable1.Edit ;adotable1.FieldByName('myimage').Assign(image1.Picture.Graphic);//以下记录保存到数据库的图像格式ext:=extractfileext(openpicturedialog1.FileName ); //取出文件扩展名if uppercase(ext) = '.BMP' THENadotable1.FieldByName('isbmp').VALUE := 1 //BMP型图像数据ELSE IF (UPPERCASE(EXT) = '.JPEG') OR (UPPERCASE(EXT) = '.JPG') THENadotable1.FieldByName('isbmp').VALUE := 0; //JPEG型图像数据ADOTABLE1.Post ;end;end;  2. 图像数据的读取及显示 procedure Tform1.ADOTable1AfterScroll(DataSet: TDataSet); //ADOTable1的AfterScroll事件方法程序 var  jpegimage:tjpegimage; begin  image1.Picture.Graphic :=nil;   //下边BMP、JPEG两种图像数据必需分别处理  if adotable1.fieldbyname('isbmp').Asstring = '1' then //BMP型图像数据   image1.Picture.bitmap.Assign(adotable1.fieldbyname('myimage'))   //上边语句中的bitmap不能为graphic,否则会出错  else if adotable1.fieldbyname('isbmp').asstring = '0' then //JPEG型图像数据   begin //begin2    jpegimage := tjpegimage.Create ; //通过jpegimage将图像显示在image1,否则会出错    try     jpegimage.Assign(adotable1.fieldbyname('myimage'));     image1.Picture.Graphic :=jpegimage;    finally     jpegimage.Free ;    end; //end try  end; //end begin2end;  注:别忘了在单元文件接口部分的uses语句中添入JPEG单元引用。  以上程序代码在DELPHI6.0+SQL(或ACCESS或PARADOX)数据库下运行通过。 天极IT资讯短信服务 电脑小技巧 function check4() { if (dn.mobile.value.length!=11) { alert("手机号码不正确!"); dn.mobile.focus(); return false; } return true; } 资费:包月5元手机: 介绍:细处着手,巧处用功。高手和菜鸟之间的差别就是:高手什么都知道,菜鸟知道一些。电脑小技巧收集最新奇招高招,让你轻松踏上高手之路。   在《Delphi存取图像完整解决方案》一文中,笔者提供了一种DELPHI存取JPEG、BMP图像到数据库的解决方案,虽然它适用于ACCESS和SQL数据库,但它并不适用于所有数据库(比如PARADOX数据库中的GRAPHIC图像字段就不能采用该方法存取图像数据),下文将介绍DELPHI利用ASSIGN方法存取JPEG、BMP图像到数据库的另一解决方案来进行补充完善。演示数据库结构和窗口界面设计同前文,不再重述,将单元的相应程序代码作如下更换:  1. 图像数据的选择及保存 procedure Tform1.selectimageClick(Sender: TObject); //选择图像beginif openpicturedialog1.Execute thenimage1.Picture.LoadFromFile(openpicturedialog1.FileName );end;procedure Tform1.savetodbClick(Sender: TObject); //保存图像到数据库varext:string;beginif image1.picture.Graphic <> nil then //避免image1中无图像保存出错beginadotable1.Edit ;adotable1.FieldByName('myimage').Assign(image1.Picture.Graphic);//以下记录保存到数据库的图像格式ext:=extractfileext(openpicturedialog1.FileName ); //取出文件扩展名if uppercase(ext) = '.BMP' THENadotable1.FieldByName('isbmp').VALUE := 1 //BMP型图像数据ELSE IF (UPPERCASE(EXT) = '.JPEG') OR (UPPERCASE(EXT) = '.JPG') THENadotable1.FieldByName('isbmp').VALUE := 0; //JPEG型图像数据ADOTABLE1.Post ;end;end;  2. 图像数据的读取及显示 procedure Tform1.ADOTable1AfterScroll(DataSet: TDataSet); //ADOTable1的AfterScroll事件方法程序 var  jpegimage:tjpegimage; begin  image1.Picture.Graphic :=nil;   //下边BMP、JPEG两种图像数据必需分别处理  if adotable1.fieldbyname('isbmp').Asstring = '1' then //BMP型图像数据   image1.Picture.bitmap.Assign(adotable1.fieldbyname('myimage'))   //上边语句中的bitmap不能为graphic,否则会出错  else if adotable1.fieldbyname('isbmp').asstring = '0' then //JPEG型图像数据   begin //begin2    jpegimage := tjpegimage.Create ; //通过jpegimage将图像显示在image1,否则会出错    try     jpegimage.Assign(adotable1.fieldbyname('myimage'));     image1.Picture.Graphic :=jpegimage;    finally     jpegimage.Free ;    end; //end try  end; //end begin2end;  注:别忘了在单元文件接口部分的uses语句中添入JPEG单元引用。  以上程序代码在DELPHI6.0+SQL(或ACCESS或PARADOX)数据库下运行通过。 下载本文示例代码


Delphi图像存取另类解决方案Delphi图像存取另类解决方案Delphi图像存取另类解决方案Delphi图像存取另类解决方案Delphi图像存取另类解决方案Delphi图像存取另类解决方案Delphi图像存取另类解决方案Delphi图像存取另类解决方案Delphi图像存取另类解决方案Delphi图像存取另类解决方案Delphi图像存取另类解决方案Delphi图像存取另类解决方案Delphi图像存取另类解决方案Delphi图像存取另类解决方案Delphi图像存取另类解决方案
阅读(183) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~