熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Delphi編程 >> 正文

DELPHI基礎教程:數據訪問部件的應用及編程(三)[1]

2022-06-13   來源: Delphi編程 

   字段部件

  字段部件在應用程序中始終是不可見的部件在程序運行過程中是如此在程序設計階段也是如此但是它在應用中起著非常重要的作用可以說它是所有數據浏覽部件從數據庫表中顯示編輯數據的基礎這是因為字段部件直接對應著數據庫表中的字段浏覽和修改表中的數據必須要通過字段部件同時字段部件所擁有的屬性可以用來說明數據庫表中對應的字段的數據類型當前的字段值顯示格式編輯格式等字段部件的事件如OnValidate可以用來設定輸入字段值時進行有效性檢驗

  數據庫表的每一列在應用程序中都有其對應的一個字段部件在缺省情況下當TTable或TQuery的Active屬性被置為False或調用close方法時與表中各列對應的字段部件也隨即消失要想為應用程序創建永久性的字段部件我們必須要在程序設計階段使用字段編輯器(Fields Editor)來創建使用字段編輯器創建永久性字段的好處是我們在程序代碼中利用永久性字段部件可以更加有效方便可靠地訪問數據庫表中記錄的各字段值在任何時候我們都可以以同樣的字段順序固定的字段顯示表中的記錄即使數據庫表的結構已發生了變化當然如果在數據庫表中與字段部件對應的字段已經不存在時應用程序就不能正常地執行下去了Delphi會彈出一個錯誤信息框告訴用戶表中的字段已經不存在了

   字段部件的屬性及應用

  字段部件具有很多的屬性通過設置字段部件有關的屬性可以控制字段對象在數據浏覽部件中的顯示方式字段值能否被修改等特別是對於用字段編輯器創建的永久性的字段部件我們在程序設計階段便可以在Object Inspector中方便地選取字段部件 進行有關屬性的設置

  字段部件的主要屬性如表所示該表中列出的屬性只是字段部件的部分屬性它主要用來控制字段對象的顯示方式

  表 字段部件的主要屬性

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

  屬性名 功 能

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

  Alignment 說明字段值在數據浏覽部件中顯示時的對齊方式左對齊右對齊居中三種方式

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

  Calculated 說明字段是否是計算字段屬性值為True時該字段是計算字段字段值可以根據表中其它字段的值計算得出

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

  Currency 等於true時以貨幣格式顯示數值等於False時不以貨幣格式顯示數值型數據

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

  DisplayFormat 用於說明字段值在數據浏覽部件中的顯示格式

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

  DisplayLabel 字段在網格(TDBGrid部件)中顯示時為字段指定顯示標題

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

  DisplayNidth 字段在網格(TDBGrid部件)中顯示時為字段指定顯示寬度單位是字符數

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

  EditFormat 說明字段在數據浏覽部件中的編輯輸入格式

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

  EditMask 在進行字段值的編輯輸入時限定輸入字段值的過濾條件(即字段值的范圍)

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

  FieldName 該字段部件對應實際數據庫表中的字段的名字

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

  Index 該字段部件在數據集所有字段部件中的順序號

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

  MaxValue 說明可以為該字段輸入最大的數值

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

  MinValue 說明可以為該字段輸入最小的數值

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

  Name 字段部件的名字

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

  ReadOnly 等於true時只能讀取該字段的字段值不能修改等於False時可以對該字段的字段值進行讀寫

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

  Size 說明字段的大小單位是字符數

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

  Visible 為True時該字段可以在TBDBGrid部件中顯示為False時該字段不能在TDBGrid部件中顯示

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

  表中的屬性並不是所有類型的字段部件都擁有的如一個TStringField類型的字段部件是沒有CurrencyMaxValueMinValue和DisplayFormat屬性的一個TFloatField類型的字段部件是沒有Size屬性的

  對於布爾型屬性在設計過程中的Object Inspector中雙擊該屬性該屬性的值將會在True和False之間來回切換其他屬性需要用戶輸入屬性值或從下拉式列表框中選取屬性值所有的屬性都可以通過程序代碼進行設置大多數屬性可以獨立地設置只有DisplayFormatEditFormat和EditMask是相互聯系的在設置它們的屬性值時一定要確保相互協調

  利用EditMask屬性為字段設定編輯模式

  為字段部件設置一定的EditMask屬性值當編輯輸入該字段的字段值時用戶只能根據EditMask設定的編輯模式進行編輯或輸入字段值在為EditMask屬性設置屬性值時可以用手動方式也可以用輸入模式編輯器來完成當為某字段部件設置EditMask屬性時雙鼠標雙擊EditMask屬性便可以打開輸入模式編輯器(Input Mask Editor) 例如在為CustomerDB表的Phone字段設定編輯模式時首先在Object Inspector中選取與Phone字段對應的TablePhone字段對象然後雙擊EditMask屬性打開輸入模式編輯器

[]  []  []  []  


From:http://tw.wingwit.com/Article/program/Delphi/201311/25153.html
    推薦文章
    Copyright © 2005-2022 電腦知識網 Computer Knowledge   All rights reserved.