VB教程:显示数据库记录 约束数据列表控件 约束数据组合框控件

  次阅读 作者:智能小宝 来源:互联网 2016-01-19 12:59 我要评论(0)

数据库中的数据要最终显示给用户,就要使用数据约束控件,比如前面所使用的文本框以及VB所提供的其他普通约束数据控件,VB中还提供了多种高级约束数据控件,其中包括:高级约束数据网格控件(DBGrid)、高级约束列表控件(DBList)和高级约束组合框控件(DBCombo)。在默认的工具箱中,尚未加入这些控件,要使用它们,首先要先引用它们:右键点击工具箱选择 部件 ,点击MicrosoftDataBoundGridControl 复选框来加入网格控件,点击MicrosoftDataBoundListControls5.0 加入列表控件和组合框控件。

高级约束数据网格控件(DBGrid)

高级约束数据网格控件显示并允许操作与其相连的记录集对象,DBGrid控件被称为 数据感知 的,即只要将其DataSource属性设置为 Data控件(当然Data控件的DatabaseName和RecordSourse属性必须已经被正确设置)就能利用记录集来自动填充控件的网格,并且列头也由记录集对象自动设置。

换句话说,就是通过DBGrid控件所显示的二维网格,实际上可以形象地看到整个记录集的结构和内容。可以在代码中指定当前单元,或用户在运行时用鼠标或单元箭头键改变当前单元,然后进行单元内容的修改,单元可以单独或按行选中。用DBGrid控件的列Columns集合的Count属性和 Recordset对象的RecordCount属性可以确定控件中的行和列的数目。

约束数据列表控件(DBList)与

约束数据组合框控件(DBCombo)

DBList与DBCombo控件是和数据相连的控件,它们能在列表中自动显示与之相连的Data控件的字段值,并可以有选择地更新其它的 Data控件中相关表的字段。DBList和DBCombo控件的列表是通过简单地设置一些属性由和它们相连的Data控件的Recordset对象中的字段中的数据自动填加数据项,并且控件有能力更新在不同的Data控件的相关的Recordset对象中的字段,即用一个记录集中的某个字段值去更新另一个记录集中指定的一个字段的值。

DBList与DBCombo常用的属性:

RowSource:作为控件列表区段的项目源使用的一个Data控件名,即用所指定的数据控件中的一个字段内容来填充列表控件的列表区;

ListField:由RowSource指定的Data控件创建的Recordset中的一个字段名,用于填充列表;

SelectedItem:由RowSource属性指定的在Recordset中的选定项目的书签(即选定的字段项目所在的记录)。

举例如下:在列表中选定一个人名,则在其它的几个文本框中就显示这个人的所有完整的信息。

开始一个新的工程,在窗体上放置一个Data控件,把它的DatabaseName设为c:myfile.mdb ,RecordSource设置为 Phone 表;一个DBList控件,把RowSource设置为 Data1,ListField设置为 姓名 ;三个Text控件,把DataSource都设置为Data1,DataField分别为 姓名 、 电话 、 地址 。现在我们运行程序,就会看到第一条记录中的完整信息,但点击列表来选择其他的项目时则不会发生任何变化,这是因为没有指明列表框控件如何响应Click事件,导致Data不能重定位到记录集中与所点击项目匹配的新的记录,因此要在列表控件的Click事件中加入如下代码

Data1.RecordSet.Bookmark=DBList1.SelectedItem

Bookmark属性标识记录集中的一行,通过设置这个属性,使Data控件重新定位到特定的行。控件的SelectedItem属性不是控件编辑框中显示的文本,而是所选字段所属的记录书签,这个代码使记录集中的Data控件重新定位,并更新窗体上的文本框约束数据控件。

本站文章信息来源于网络以及网友投稿,本站只负责对文章进行整理、排版、编辑,是出于传递更多信息之目的,并不意味着赞同其观点或证实其内容的真实性。如果您有什么意见或建议,请联系QQ28-1688-302!

人工智能实验室
相关文章相关文章
  • 英国研发“杀生”机器人 通过生命体获取能量

    英国研发“杀生”机器人 通过生命体获取能量

  • 无人驾驶汽车如何改变城市生活?听听他们怎么说

    无人驾驶汽车如何改变城市生活?听听他们怎么说

  • 韩春雨称已能重复实验结果 近期将有消息公布

    韩春雨称已能重复实验结果 近期将有消息公布

  • 未来两年人工智能要怎么走?看这篇就够了

    未来两年人工智能要怎么走?看这篇就够了

网友点评网友点评
阅读推荐阅读推荐

据国外媒体报道,在过去两年内,聊天机器人(chatbot)、人工智能以及机器学习的研发和采用取得了巨大进展。许多初创公司正利用人工智能和...

霍金 视觉中国 图 英国著名物理学家霍金(Stephen Hawking)再次就人工智能(AI)发声,他认为:对于人类来说,强大AI的出现可能是最美妙的...

文|郑娟娟 今年,人工智能(AI) 60岁了。在AI60岁的时候,笔者想要介绍一下AI100,一个刚刚2岁的研究项目,但它的预设寿命是100年,甚至更长...

AlphaGo与李世石的人机大战,为大众迅速普及了人工智能的概念。 但对谷歌而言,除了下围棋,现在的人工智能进展到哪一步了?未来,人工智能...