首页 考试吧论坛 Exam8视线 考试商城 网络课程 模拟考试 考友录 实用文档 求职招聘 论文下载 | ||
2011中考 | 2011高考 | 2012考研 | 考研培训 | 在职研 | 自学考试 | 成人高考 | 法律硕士 | MBA考试 MPA考试 | 中科院 |
||
四六级 | 职称英语 | 商务英语 | 公共英语 | 托福 | 雅思 | 专四专八 | 口译笔译 | 博思 | GRE GMAT 新概念英语 | 成人英语三级 | 申硕英语 | 攻硕英语 | 职称日语 | 日语学习 | 法语 | 德语 | 韩语 |
||
计算机等级考试 | 软件水平考试 | 职称计算机 | 微软认证 | 思科认证 | Oracle认证 | Linux认证 华为认证 | Java认证 |
||
公务员 | 报关员 | 银行从业资格 | 证券从业资格 | 期货从业资格 | 司法考试 | 法律顾问 | 导游资格 报检员 | 教师资格 | 社会工作者 | 外销员 | 国际商务师 | 跟单员 | 单证员 | 物流师 | 价格鉴证师 人力资源 | 管理咨询师考试 | 秘书资格 | 心理咨询师考试 | 出版专业资格 | 广告师职业水平 驾驶员 | 网络编辑 |
||
卫生资格 | 执业医师 | 执业药师 | 执业护士 | ||
会计从业资格考试(会计证) | 经济师 | 会计职称 | 注册会计师 | 审计师 | 注册税务师 注册资产评估师 | 高级会计师 | ACCA | 统计师 | 精算师 | 理财规划师 | 国际内审师 |
||
一级建造师 | 二级建造师 | 造价工程师 | 造价员 | 咨询工程师 | 监理工程师 | 安全工程师 质量工程师 | 物业管理师 | 招标师 | 结构工程师 | 建筑师 | 房地产估价师 | 土地估价师 | 岩土师 设备监理师 | 房地产经纪人 | 投资项目管理师 | 土地登记代理人 | 环境影响评价师 | 环保工程师 城市规划师 | 公路监理师 | 公路造价师 | 安全评价师 | 电气工程师 | 注册测绘师 | 注册计量师 |
||
缤纷校园 | 实用文档 | 英语学习 | 作文大全 | 求职招聘 | 论文下载 | 访谈 | 游戏 |
15.6 字段部件和字段编辑器的使用
字段部件有时又称字段对象它对应着数据库表中的列即字段,字段对象是不可见的部件,在Delphi中有两种方式创建字段部件:
①在应用程序运行过程中,随着数据集部件被激活,对应于数据库表中每一列的字段部件便动态地被创建。
②在设计过程中,程序设计人员利用字段编辑器(Fields Editor)可以创建永久性的字段部件,即使字段对象对应的数据库表的结构发生了变化时,这些字段部件也不会发生变化。
既然字段部件是对应于数据库表中的各个字段的,而数据库表中的字段有多种数据类型,所以字段部件相应也有多种类型,字段部件的类型与数据库表中的字段的数据类型的对应关系如表15.5所示。
表15.5 字段部件的类型
━━━━━━━━━━━━━━━━━━━━━━━━━━━━
字段部件的类型 对应的数据类型
────────────────────────────
TStringField 字符串类型的字段
TSmallIntField 短整数类型的字段 -32768-32767
TIntegerField 整数类型的字段
TWordField 正整数类型的字段0-65535
TBooleanField 布尔型字段
TFloatField 浮点数类型的字段
TCurrenCyField 货币型字段
TDataField 日期型
TTimeField 时间型
TBCDField 小数位数固定的浮点数
TDataTimeField 日期时间型字段
━━━━━━━━━━━━━━━━━━━━━━━━━━━
我们在本书中只介绍一些常见类型的字段部件的使用,其他类型字段部件的使用可以参看联机帮助文件。
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是相互联系的。在设置它们的属性值时一定要确保相互协调。
相关推荐:2010年9月计算机等级考试试题及答案解析专题北京 | 天津 | 上海 | 江苏 | 山东 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
广东 | 河北 | 湖南 | 广西 | 河南 |
海南 | 湖北 | 四川 | 重庆 | 云南 |
贵州 | 西藏 | 新疆 | 陕西 | 山西 |
宁夏 | 甘肃 | 青海 | 辽宁 | 吉林 |
黑龙江 | 内蒙古 |