当前位置:七道奇文章资讯编程技术Delphi编程
日期:2011-03-20 17:55:00  来源:本站整理

第十六章 数据浏览部件的利用及编程(二)[Delphi编程]

赞助商链接



  本文“第十六章 数据浏览部件的利用及编程(二)[Delphi编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

在TDBGrid部件中显示数据库表中的记录信息时,假如TDBGrid利用数据集部件在运行历程中动态生成的字段部件时,TDBGrid显示数据库表中的记录是按表中记录的缺省次序和字段的缺省次序显示表中的记录信息,并且要显示表中各个记录的全部字段的值.而在大大都情形下,用户大概但愿按自己喜好的字段次序显示记录的各个字段,有时还但愿只显示记录的部份字段值,要到达这一目的,必须在计划阶段利用字段编辑器来成立永久性的字段部件,并且还要设置各个字段部件有关的属性.

当利用字段编辑器(Fields Editor)成立永久性的字段部件供应应TDBGrid部件来利用时,我们可以在TDBGrid部件中更机动地显示数据库表中的记录信息.比方在字段编辑器中的Fields列表框中我们可以设定字段部件的显示次序,在设定好字段的显示次序之后,TDBGrid部件便按这个次序显示记录的各个字段值,当我们设置字段部件的DisplayFormat和EditFormat属性之后,在TDBGrid部件中便呼应地以设定的显式和编辑格局显示字段值和编辑字段值;当设置某一个字段部件的Required属性为True时,当插入一条新记录时,必必要为该字段输入呼应的字段值,不然会出错;通过设置字段部件的Visible属性,可以肯定呼应的字段值能否在TDBGrid组件中显示.有关利用字段编辑器来成立字段部件,设置字段部件的属性请参看3.6.2节. 

16.4.1 TDBGrid部件的主要属性及利用 

TDBGrid部件是用于显示和编辑数据库表中的记录信息的重要部件,它是我们在程序计划历程当中要常常利用的、机动地用于显示和编辑数据库表中的记录信息的一个强有力的工具.TDBGrid具有很多重要的属性,我们可以在程序计划阶段和程序运行历程中举行设置.TDBGrid部件的一些重要属性及其设置办法请参看联机帮忙文件.TDBGrid部件中一些重要的属性是Option属性、DrawMode属性和DefaultDrawing属性,我们重点对两个属性举行阐述.

Options属性:它是TDBGrid部件的一个扩大属性,在程序计划阶段设置Options属性可以掌握TDBGrid部件的显示特点和对事件的呼应特点.Options属性在TDBGrid部件的属性栏中显示时,它的前面带有一个"+"标志,双击"+"标志,便可以展开一个布尔型属性列表,用户可以一一地改正此中的各个属性值,改正完毕后可以双击Options属性前的"-"标志,使TDBGrid部件的属性列表恢复到本来的显示状况.

表16.5列出了Options属性中包含的全部的扩大属性项以及它们对TDBGrid部件的影响. 

表16.5 TDBGrid部件的Options属性中的扩大属性项

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

属 性 名 取 值 及 影 响

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

dbEditing True: 缺省情形下为此值,确保用户可以在网格中编辑插

入和删除数据库表中的记录

False:在网格中不能编辑、插入和删除表中的记录

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

dbAlwaysShow True: 当用户选中记录中的一个字段时,自动地使该字段

Editor 处于编辑状况

False:缺省情形下为此值.当一个字段被选中,它不能

自动地变成编辑状况

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

dgTitles True: 缺省情形下为此值.在网格的第一行中显示字段名

或字段标题

False:在网格中不显示字段名或字段对应的标题

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

dgIndicator True: 缺省情形下为此值.在网格的最左边用一个黑箭头

标注当前记录指针所在的位置,在插入状况时,箭

头变成星状,在编辑状时,箭头变成"I"头.

False:在网格中不标识当前记录指针的位置

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

dgColumnResize True: 缺省情形下为此值.通过拖拉网格的垂直脱离线可

以改变网格中各列的宽度,在具体操作时要拖拉各

列中显示字段标题区域中的垂直脱离线.

False:网格中各列的宽度不能改变

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

dgCloLines True: 缺省情形下为此值.在网格中显示各列之间的垂直

脱离线.

False:在网格中不显示垂直脱离线

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

dgRowLines True: 缺省情形下为此值.在网格中显示各行之间的水平

脱离线.

False:在网格中不显示水平脱离线.

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

dgTabs True: 缺省情形下为此值.可以在记录的各字段之间移动

输入核心(也即挑选提醒棒)

False:不能在记录的名字段之间移动输入核心,在网格中

按Tab键时,直接跳出网格

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

dgRowSelect True: 挑选提醒棒覆盖整条记录中的全部字段

False:缺省情形下为此值.挑选提醒棒一次只覆盖记录中

的一个字段

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

dgAlwaysShow True: 缺省情形下为此值.在网格始终显示挑选提醒棒,即

-Selection 使其控件得到核心时,也是如此.

False:只在当网格得到核心时,才显示挑选提醒棒.

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

dbConfirmDelete True: 缺省情形下为此值.当在网格中删除记录时,弹出确

认信息.

False:在网格中删除记录时不弹出确认信息.

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

 

用户想理解这些可选属性项的作用和影响,还可以参看联机帮忙信息.

DragMode属性:该属性有两个可选的属性值.当它的值被设置为dmManual时,在利用程序运行历程中,用户可以用鼠标拖放网格中的各列,改变各列在网格中的显示次序和位置.当用鼠标拖放网格中的一列、改变它在网格中的位置时,只是改变了该列在数据集合的位置,并没有改变它对应的数据库表中的位置.当该属性的值被设置成dmAutomatic时,用户不能用鼠标拖放网格中的各列而改变它在网格中的位置.

DefalultDrawing属性:该属性是布尔型属性,它用于掌握网格中各网格单元的绘制方法.在缺省情形下,该属性的值为True,也就是说Delphi利用网格本身缺省的办法绘制网格中各网格单元,并填充各网格单元中的内容,各网格单元中的数据按照其对应的字段部件的DisplayFormat属性和EidtFormat属性举行显示和绘制.假如DefaulDrawing属性被设置为False时,Delphi不会自动地绘制网格中各网格单元和网格单元中的数据,用户必须自己为TDBGrid部件的OnDrawDataCell事件编写呼应的程序用于绘制各网格单元和此中的数据.

在理解了TDBGrid部件的各个属性之后,我们便可以利用TDBGrid部件来显示和编辑数据库表中的数据了.图16.5所示的利用窗体中各部件的属性设置如表16.6所示.

 

表16.6 各部件的属性设置

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

属 性 名 属 性 值

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

Table1.DatabaseName DEMOS

Table1.TableName Customer.DB

Table1.CanModify True

DataSource1.DataSet Table1

DataSource1.AutoEdit True

DBGrid1.Datasource DataSource1

DBGrid1.ReadOnly False

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

 

在其他数据浏览部件(如TDBEdit)中编辑改正此中的内容时,只要用户用Tab键或鼠标将核心移到其他部件时,用户对该字段的改正会自动地写回到数据库表中,利用TDBGrid部件编辑改正数据库表时,Delphi是以记录为基本单位将改正写回磁盘上的数据库表的.用户在编辑和改正表中的当前记录时,只有效户将记录指针移到其他的记录时,Delphi才将用户对当前记录的改正写回到磁盘上的数据库表,不然,用户即便改变核心到窗体中的其他部件,Dephi也不会投寄用户对当前记录的改正.Delphi在向数据库表投寄TDBGrid部件中的被改正的记录时,它会自动地查抄全部与当前数据库相连的数据浏览部件的状况,只要此中有任何一数据浏览部件正在改正数据,这时会弹出出错信息,并且当前记录的改正不会被投寄(即被写回磁盘上的数据库表).


  以上是“第十六章 数据浏览部件的利用及编程(二)[Delphi编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
  • 第十六章 数据浏览部件的利用及编程(二)
  • 第十六章 数据浏览部件的利用及编程(一)
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .