程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> Delphi >> Delphi數據訪問部件的應用及編程(4)

Delphi數據訪問部件的應用及編程(4)

編輯:Delphi

關於書簽(BookMark)操作;

書簽操作主要用於在表中快速地定位記錄指針,在應用程序中常常要保存記錄指針所在的位置,在進行其他處理之後,希望能快速地返回到先前指針所在的位置,此時,使用書簽將顯得特別有用。有關書簽操作,Delphi提供了三個方法,它們是:

● GetBookMark

● GotoBookMark

● FreeBokMark

這三個方法一般都是在一起使用,GetBookMark方法返回一個TBookMark類型的變量,該變量包含著指向當前記錄的指針,GotoMark方法用於快速地將記錄指針定位到具有書簽的記錄處。FreeBookmark方法是與GetBookMark方法相反的操作,它釋放書簽標志。下面的程序代碼闡述了書簽操作的一般方法:

BookMark : TBookMark;
<Do something>
BookMark := Table1.GetBookMark; {對當前記錄作書簽標志}
Table1.DisalbeControls; {切斷Table1與數據察覺部件的聯系}
Table.First
While Not EOF Do {對表中全部記錄進行其他處理}
begin
<Do something>
Tabel1.Next;
end;
Tabel1.GotoBookMark(BookMark)
Table1.enableControls; {重新定位記錄指針回到原來的位置}
Tabel1.FreeBookMark(BookMark); {刪除書簽BookMark標志}
 

15.3.5 數據集部件與數據浏覽部件的連接 

數據集部件TTabel和TQuery具有三個方法,DisableControls 方法、EnableControls方法、Refresh方法用於控制數據集部件和與其相連的數據浏覽部件之間的連接,以及控制數據浏覽部件的顯示。在用戶修改和更新以及遍歷數據庫表中的記錄時,調用DisableControls方法具有重要意義,調用DisbaleControls方法以切斷TTable或TQuery部件與數據浏覽部件的連接,使數據浏覽部件暫時失效,否則,在對TTable或TQuery部件的每次修改之後,窗體中所有與它們相連的數據浏覽部件都要更新其顯示內容,這親顯然會減慢處理速度。當遍歷表中的記錄時記錄指針每移動一下,窗體中的數據浏覽部件也隨之更新一下其中的顯示內容,在屏幕上產生閃爍。

EnableControls方法的作用與DisbaleControls方法的作用是相反的,調用EnableControls方法,使TTable或TQuery部件恢復與數據浏覽部件的連接,使暫時失效的數據浏覽部件恢復到正常顯示表中記錄信息的狀態。

Refresh方法用於刷新數據浏覽部件中的顯示。在調用Refresh方法時,必須要確保TTable或TQuery部件是打開的。當數據集中的記錄被修改之後,調用Refresh方法,數據浏覽部件中顯示的信息也隨之改變。

15.3.6 數據集部件的事件 

數據集部件TTable或TQuery具有很多的事件。為這些事件編寫相應的程序代碼可以進行有效性驗證、計算可計算字段的值、確認對數據庫表的多種操作等等。這些事件及其描述如表15.4所示。 

表15.4 數據集部件常用的事件

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

事 件 描 述

───────────────────────────────────

BeforeOpen,Afteropen 在數據集部件被打開之前/之後被觸發

───────────────────────────────────

BeforeClose,Afterclose 在數據集部件被關閉之前/之後被觸發

───────────────────────────────────

BeforeInsert,AfterInsert 在數據集部件進入插入狀態之前/之後被觸發

───────────────────────────────────

BeforeEdit,AfterEdit 在數據集部件被編輯之前/之後被觸發

───────────────────────────────────

BeforePost,AfterPost 在數據集部件投寄被修改的記錄之前/之後被觸發

───────────────────────────────────

BeforeCancel,AfterCancel 在數據集部件取消前一步操作之前/之後被觸發

───────────────────────────────────

BeforeDelete,AfterDelete 在數據集部件刪除當前記錄之前/之後被觸發

───────────────────────────────────

OnNewRecord 當建立一條新記錄時被觸發

───────────────────────────────────

OnCalcFIElds 當為表中的計算字段計算字段值時被觸發

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 

15.4 TTable部件及應用 

在前一節裡我們介紹了數據集部件TTable 和TQuery 的共同的一些屬性和方法。TTable部件是Delphi數據庫編程中要經常使用的最重要的部件之一,它是數據庫應用程序訪問數據庫時必須使用的數據集部件之一,在這一節裡,我們重點介紹TTable部件特有的屬性和方法,TTable部件所有的屬性、方法和事件都可以在聯機幫助中查到。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved