Delphi 数据访问部件的应用及编程(三)

2008-02-23 07:17:04来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

15.6.1 字段部件 

字段部件在应用程序中始终是不可见的部件。在程序运行过程中是如此,在程序设计阶段也是如此,但是它在应用中起着非常重要的作用,可以说它是所有数据浏览部件从数据库表中显示、编辑数据的基础。这是因为字段部件直接对应着数据库表中的字段,浏览和修改表中的数据必须要通过字段部件,同时字段部件所拥有的属性可以用来说明数据库表中对应的字段的数据类型、当前的字段值、显示格式、编辑格式等,字段部件的事件如OnValidate可以用来设定输入字段值时进行有效性检验。

数据库表的每一列在应用程序中都有其对应的一个字段部件,在缺省情况下,当TTable或TQuery的Active属性被置为False或调用close方法时,与表中各列对应的字段部件也随即消失,要想为应用程序创建永久性的字段部件,我们必须要在程序设计阶段使用字段编辑器(Fields Editor)来创建。使用字段编辑器创建永久性字段的好处是:我们在程序代码中利用永久性字段部件可以更加有效、方便、可靠地访问数据库表中记录的各字段值, 在任何时候我们都可以以同样的字段顺序、固定的字段显示表中的记录,即使数据库表的结构已发生了变化。当然如果在数据库表中与字段部件对应的字段已经不存在时,应用程序就不能正常地执行下去了,Delphi会弹出一个错误信息框,告诉用户表中的字段已经不存在了。 

15.6.1.1 字段部件的属性及应用 

字段部件具有很多的属性,通过设置字段部件有关的属性,可以控制字段对象在数据浏览部件中的显示方式、字段值能否被修改等。特别是对于用字段编辑器创建的永久性的字段部件,我们在程序设计阶段便可以在Object Inspector中方便地选取字段部件, 进行有关属性的设置。

字段部件的主要属性如表15.6所示,该表中列出的属性只是字段部件的部分属性,它主要用来控制字段对象的显示方式。 

表15.6 字段部件的主要属性

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

属性名 功 能

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

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部件中显示

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

 

表15.6中的属性并不是所有类型的字段部件都拥有的,如一个TStringField类型的字段部件是没有Currency、MaxValue、MinValue和DisplayFormat属性的,一个TFloatField类型的字段部件是没有Size属性的。

对于布尔型属性,在设计过程中的Object Inspector中双击该属性,该属性的值将会在True和False之间来回切换,其他属性需要用户输入属性值或从下拉式列表框中选取属性值。所有的属性都可以通过程序代码进行设置。大多数属性可以独立地设置,只有DisplayFormat,EditFormat和EditMask是相互联系的。在设置它们的属性值时一定要确保相互协调。

利用EditMask属性为字段设定编辑模式:

为字段部件设置一定的EditMask属性值,当编辑输入该字段的字段值时,用户只能根据EditMask设定的编辑模式进行编辑或输入字段值。在为EditMask属性设置属性值时可以用手动方式也可以用输入模式编辑器来完成,当为某字段部件设置EditMask属性时,双鼠标双击EditMask属性便可以打开输入模式编辑器(Input Mask Editor) 。例如在为Customer.DB表的Phone字段设定编辑模式时,首先在Object Inspector中选取与Phone字段对应的Table1Phone字段对象,然后双击EditMask属性,打开输入模式编辑器。 

字段输入模式编辑器 

在字段输入模式编辑中可以选择一种输入模式,而且在TestInput编辑框中输入字段值进行检验。

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:开发Delphi对象式数据管理功能(六)

下一篇:Delphi 与SQL编程(一)