第十四章简单数据库应用的创建及mastapp介绍二内容摘要:

型不匹配,则要经过一定的转换才能够相互赋值。 如: := 这条代码在运行过程中将会出错,因为 TablelcustNo是 TFloatField 类型即是数值型数据,要在编辑框 Edit1 中显示数值型数据要经过下列转换: :=。 AsString 是字段对象的属性,通过字段对象的 AsString 属性可以读取字段值并且将它转换成字符串类型。 字段对象的字段值可以转换 成以下几种类型的数据 : AsString: 将字段值转换成字符串数据 AsBoolean: 将字段值转换成布尔型数据 AsDateTime: 将字段值转换成日期时间数据 AsFloat: 将字段值转换成数值型数据 AsInteger: 将字段值转换成整数型数据 下面的程序代码是从字段对象中读取字段值并将它显示在编辑框 Edit1 中, 或者将字段值赋给相匹配的变量。 CustNoDouble: Double。 CustNoInt: Integer。 CustNoString: String。 {在 Edit1 中显示字段值 } :=Table1Company。 {类型相匹配,不需要转换 } :=。 {类型不匹配,需要转换 } {将字段值赋给变量 } CustNoDouble:=。 {类型相匹配,不需要转换 } CustNoInt:=。 {类型不匹配,需要转换 } CustNoString:=。 {类型不匹配,需要转换 } 设定字段对象的显示格式 我们即可以在设计阶段设定字段对象的显示格式,也可以在运行过程中通过程序代码来设定字段对象的显示格式。 例 在如图 所示的窗体中,再增加一个 TaxRate 字段, 并在程序设计过程中设定它的显示格式为 %,即设置 TaxRate 字段对象的DisplayFormat 属性为 % , 若 TaxRate 的值为 那么在网格部件中其显示的格式为 %。 在运行过程中我们通过程序代码来设定字段 Phone 的显示格式, 美国的电话表示形式与中 国的表示形式不一样(如美国 8085550269,中国 (808) 5550269 ), 为此我们将 phone 字段的值表示成中国式的形式。 具体方法是:在 Object Inspector 中选取 Table1phone 对象,并为此对象的 OnGetText 事件编写如下程序代码: (Sender:TField。 Text:OpenString。 DisplayText:Boolean)。 begin If DisplayText then begin Text:=。 Delete(Text,4,1)。 Delete(Text,7,1)。 Insert(39。 (39。 ,Text,1)。 Insert(39。 )39。 ,Text,1)。 end。 end。 图 设定字段对象的显示格式 自定义字段以及计算字段对象的创建 有时候为了使应用程序完成所期望的工作,我们要在数据库表现有字段的基础上增加一些自定义的字段,这些字段并不是数据库表中实际存在的字段,它们常常是根据数据库表中的其它的字段动态地计算出来的,因而它们常常被称为计算字段。 例如我们创建一个浏览 表中记录的应用如图 所示。 浏览 表中的记录 首先,我们想在显示 表的网格中增加一个自定义的字段对象,完成以下步骤: 1、双击窗体中的 Table1,打开字段编辑器 Fields Editor。 2、在 Fields Editor 窗口中,单击鼠标右键,选择 New Fields 菜单项。 3、 Delphi 显示 New Fields 对话框。 选择 Field Type 列表框中的 Currency 项, 并在 Field Name 文体 框中 输入 Balance , 这 样我们自定 义了一个 CurrencyField 类型的字段 Balance。 Delphi 会自动地填入相应的字段对象名,其缺省值为 Table1Balance。 如图 所示。 图 New Field 对话框 4、单击 Ok按钮,关闭 New Field 对话框。 当 Fields Editor 窗口重新出现时, 注意 Balance 已经出现在 Fields 列表框中。 5、在 Fields Editor 窗口中单击鼠标右键, 并选择 Add Fields 菜单项, 打开 AddFields 对话框。 6、从 Available Fields 列表框中, 按住 Ctrl 键并单击鼠标左键, 选择字段: OrderNo、 CustNo、 SaleDate、 ShipData、 ItemsTotal、 Amo。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。