国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

數據庫應用程序開發中圖像數據的存取技術

2019-11-18 18:53:05
字體:
來源:轉載
供稿:網友

數據庫應用程序開發中圖像數據的存取技術 
  Delphi提供了數據訪問(Dataaccess)和數據控制(DataControls)的可視化控件,能夠方便快捷地產生具有良好界面且功能強大的數據庫應用程序。對于涉及圖像數據(含Graphic字段)的數據庫應用程序,如人事管理信息系統等,圖像數據的存取技術是一個關鍵。然而,有關Delphi下圖象的存取,特別是圖像的保存方面的技術各種資料上很少提及。下面,筆者結合一個簡單的例子來說明。

一、圖像數據的保存
  1.創建一個含有Graphic字段的數據庫列表。
  在WindowsISQ(或Databasedesktop)下create database mydb.gdb
  create table myfrieds
  (name varchar(15) notnull,
     telephone varchar(12),
     address varchar(30),
     zipvarchar(8),
     picture varchar(15),
     image blob);

  其中,picture字段用于保存圖像的名稱(包括路徑),image(Graphic字符)則用于存儲圖像,其數據類型
為“blob”。

  2.建立窗體,設置窗體中各控件的屬性。

  該窗體的主要功能是將某人信息進行編輯和保存。需要注意的圖像保存所用的圖像框必須用TImage而不能用TDBImage,編輯框宜用Tedit而不宜用TDBEdit,這一點與圖像的讀取恰好相反。

  其中,各主要控件的屬性設置如下:
  Datasource1.Dataset:=table1;
  Table1.Databasename:=mydb.gdb;
  Table1.Tablename:=myfriends;
  Table1.active:=true;
  其他諸如Caption之類的屬性設置不再敘述。

  3.數據處理程序的建立。
  (1)圖像( .bmp文件)打開的處理。
  PRocedureTForm1.pictopenbtnClick(Sender:TObject);
  begin
      opendialog1.execute;
   image1.picture.loadfromfile(opendialog1.filename);
  end;

  (2)圖像保存的處理。
  圖像保存的處理程序完成把在窗體1所編輯的信息包括圖像保存到相應的數據庫中,其關鍵是要定義一個Graphic類型的變量且該變量要用Assign()函數傳遞到相應數據庫中保存。具體程序如下:
  procedureTform1.Savebtnclick(sender:TObject);
  var
      graphic1:TGraphic;
  begin
      graphic1:=TGraphic.Create;
   graphic1.loadfromfile(opendialog1.filename);
   table1.insert;
   table1.fieldbyname('name').asstring:=edit1.text;
   table1.fieldbyname('telephon').asstring:=edit2.text;
   table1.fieldbyname('address').asfloat:=edit3.text;
   table1.fieldbyname('zip').asfloat:=edit4.text;
   table1.fields[4].assign(graphic1);
   table1.post;
   graphic1.free;
  end;

二、圖像數據的讀取
  在數據庫數據(包括Graphic字段的數據)的讀取和瀏覽方面,Delphi這一具有強大代碼自動生成功能的面向對象的開發工具的優越性得到淋漓盡致的體現。毫不夸張地說,不需要一條語句即可完成這一功能!

  建立窗體,設置各控件的屬性。

  Table1和Datasource1的屬性的設置與數據的保存部分相同,所不同的是數據庫數據的讀取時用TDBEdit和TDBImage控件而不用TEdit和TImage。控件TDBEdit和TDBImage只要將datafield屬性設置為其相對應的域;TDBNavigator的datasouce屬性設置為datasource1即可。 


上一篇:自定義快速報表的打印預覽窗口

下一篇:在Dephi中使用TStream讀寫數據的技巧

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
學習交流
熱門圖片

新聞熱點

疑難解答

圖片精選

網友關注

主站蜘蛛池模板: 武山县| 长春市| 彰武县| 顺义区| 永昌县| 东乌珠穆沁旗| 拉萨市| 牟定县| 北宁市| 昆山市| 沈丘县| 武山县| 阳高县| 公主岭市| 济南市| 高邮市| 望奎县| 民丰县| 万宁市| 清流县| 林西县| 印江| 武川县| 乐山市| 河津市| 长乐市| 麻城市| 庆城县| 额尔古纳市| 大荔县| 台东县| 佛山市| 广汉市| 伊川县| 上林县| 东乌珠穆沁旗| 汾阳市| 扎赉特旗| 祁阳县| 西畴县| 正宁县|