标准的Access控件:
标签、文本框、选项组、切换按钮、单选按钮、复选框、组合框、列表框、命令按钮、选项卡、图像、未绑定对象框、绑定对象框、分页符、子窗体/子报表、直线、矩形。
还可以自己注册来引用其它的。
Visual Basic中Data控件的主要方法
开发者在线 Buildercomcn
本文关键词: Visual Basic Data控件 方法
一般地,适用于Dynaset类型的记录集对象的方法同样适用于Visual Basic的Data控件的记录集(Recordset)对象。
1UpdateRecord方法
使用UpdateRecord方法可以将绑定的数据感知控件的当前内容写入到数据库中,用这种方法在Validate事件中将被绑定的控件的内容保存到数据库中而不会再次触发Validate事件。
2UpdateControls方法
使用updateControls方法可以将数据从数据库中重新读到约束控件中,恢复为原始值,等效于用户更改了数据之后取消更改。
3Refresh方法
Refresh方法用来重新建立或显示与Data控件相连的数据库记录集。如果在程序代码中改变了:DatabaseName、ReadOnly、Exclusive或Connect的属性值,就必须用Refresh方法来刷新记录集。
Refresh方法的语法为:
以下是引用片段:
Data1refresh
另外Data控件的方法还有Drag、Move、Zorder、ShowWhatsThis方法,它们在数据控件上的用法与其他对象的用法是一致的。
下面通过一个小例子来熟悉Data控件的使用,按以下步骤制作一个使用Data控件 *** 作数据库的程序,使用的数据库是前章中制作的学生学籍管理的Access数据库。具体步骤如下。
·在Visual Basic中新建一个工程,命名为useData,保存于适当的目录下。
·打开程序的主窗体,设置其Caption为“Data控件的使用实例”。
·向窗体中添加Data控件,默认name为Datal。
·为数据显示的方便,向窗体中添加DBGird控件,用于显示查询出的数据。这个控件在后面还会有详细的讲解,这里只是使用一下。选择“工程/ 部件”命令,在d出的对话框中选择“Microsoft Data Bound ConU0l”复选框,然后点击确定按钮,DBGird控件就会加到工具箱中。
·设置DBGird的Caption为数据显示表格,并设置其DataSource属性为’Datal,用于显示Datal的数据,以便我们看清数据库的变化。
·根据我们学过的来设置Data控件的属性。首先连接使用的数据库,单击Data控件,在Properties窗口中找到connet属性,因为数据库是用Access制作的,故设置其连接的数据库类型为Access类型
·找到DataBase属性,这一项是设置Data控件指向的数据库,设置其路径,在此为DADatabase学生学籍管理mdb。
·然后设置Data控件的RecordSource属性,首先设定其为学生学籍管理mdb中的学生学籍表。运行程序,可以看到整个学生学籍表的数据全部显示到了DBGir-d中。
·因为Recordsource中既可以指定某一表,也可以使用SQL语句。
你这种设置方法是错误的,ACCESS出现“#名称”就表示当前控件没有数据源,无法链接!
正确的做法应该是打开窗体的属性窗口,然后在“数据”选项卡里面找到“数据源类型”设置为“表/查询”,然后在下面的“数据源”里面选中你要的表或是查询!
设置好源数据之后,文本框里面直接输入字段名称就可以了,像要显示“姓名”的文本框直接输入“姓名”就可以了,不需要输入“[a]![姓名]”!
其实最简单的做法应该是窗体设置完“源数据”之后,点击工具栏里面的“字段列表”以显示出字段,然后往窗体里面拖就可了!
本人做过一段时间的ACCESS开发,有问题也可以大家研究研究,QQ:869906651
在数据库应用程序中 数据控件是经常要用到的 数据控件都是可视的 也就是说 如果修改了这些构件的属性 能在窗体上马上反映出来 如果这些构件的Enabled属性设为True并且数据集的Active属性也设为True 在设计期就可以看到数据
下面就来介绍一下这些控件的简单应用
指定一个数据源
数据控件必须通过TDataSource构件连接数据集 TDataSource构件扮演的角色实际上就是数据控件与数据集之间的桥梁 首先 把一个数据集构件放到窗体或数据模块上 设置它的DatabaseName属性指定要访问的数据库 设置它的TableName属性指定要访问的表 接着 把一个TDataSource构件放到窗体或数据模块上 设置它的DataSet属性指定数据集 然后 把一个数据控件放到窗体上 设置它的DataSource属性指定TDataSource构件 而这个TDataSource构件的DataSet属性已经指定了一个数据集 最后 设置数据控件的DataField属性指定要显示的字段 不过 对于TDBGrid TDBCtrlGrid和TDBNavigator构件来说 不需要设置DataField属性 因为这几个控件是以整个数据集为工作内容的
编辑和更新数据
除了TDBNavigator构件外 其他数据控件都是用来显示和编辑数据的 这里要介绍怎样编辑数据
要使用户能编辑数据 数据集必须进入dsEdit状态 如果TDataSource的AutoEdit属性设为False 用户不能直接编辑数据 除非程序调用Edit函数
要使用户能够在数据控件中修改数据 必须把数据控件的ReadOnly属性设为False 如果ReadOnly属性设为True 数据控件中显示的数据就是只读的 一般情况下 TDataSource构件的Enabled属性设为True 如果这个属性设为False 数据控件就无法显示数据 更不能修改数据
如果数据集构件的ReadOnly属性设为True 数据集就是只读的 用户在数据控件中所作的修改不能写到数据集中 除了TDBGrid构件外 当用户修改了一个字段的值 还需要把输入焦点移走 新的数据才写到数据集中 在移走输入焦点之前 用户随时可以按ESC键取消修改 在TDBGrid构件建立的栅格中 当用户修改了一个字段的值 还需要把输入焦点移到另一条记录上 新的数据才写到数据集中
禁止和允许数据刷新
当程序正在遍历整个数据集或者搜索一个特定的记录时 应当暂时禁止数据控件刷新数据 这样能加快遍历或搜索的速度 防止屏幕总是在闪烁 调用数据集的DisableControls可以暂时禁止连接这个数据集的数据控件刷新数据 DisableControls函数通常在循环 *** 作前调用 等循环结束后 程序应当立即调用数据集构件的EnableControls函数重新允许刷新数据 为了确保最后总是能恢复刷新 建议采用Try Finally结构 这样 即使在循环中出现异常 也可以保证总能调用EnableControls
下面的代码演示了怎样调用DisableControls和EnableControls函数
CustTable DisableControls;TryCustTable First;While not CustTable EOF DoBegin CustTable Next;End;FinallyCustTable EnableControls;End;
手动刷新数据
调用数据集的Refresh可以读取数据集中最新的数据并刷新数据控件 这个功能在多用户环境尤其有用 因为其他用户有可能已改变了数据集中的数据 有时候 调用Refresh可能会导致意想不到的结果 例如 如果另一个用户已经删除了一条记录 调用Refresh后 这条记录将从数据控件中消失
显示单个字段的数据控件
有的数据控件以数据库的一个或几个字段作为工作内容 如TDBText和TDBEdit 而有的数据控件以整个数据集为工作内容 如TDBGrid和TDBNavigator 显示单个字段的数据控件往往是从一个标准的Windows控件演化而来的 例如 TDBEdit构件就可以认为是TEdit的数据感知版本
把数据作为标签显示
TDBText构件是一个只读的数据控件 它非常类似于TLabel构件和TStaticText构件 TDBText构件能够把数据作为标签显示 用来标注其他控件 例如 可以用一个TDBText构件显示名称(Common_Name字段)
TDBText构件需要指定一个字段 当用户使用导航器或其他手段浏览记录时 TDBText构件显示的数据将自动变化 因为TDBText构件总是显示当前记录的数据
TDBText构件的AutoSize属性一般要设为True 这是因为字段的内容长度可能是不同的 如果AutoSize属性设为False 有些较长的内容可能会被截断
显示和编辑数据
TDBText构件只能显示数据 不能编辑数据 要既能显示数据 又能编辑数据 就要用到TDBEdit构件 TDBEdit可以认为是TEdit的数据感知(Data Aware)版本 例如 有一个TDataSource构件叫CustomersSource 它的DataSet属性指向一个TTable构件叫CustomersTable 把一个TDBEdit构件放在窗体上 其DataSource属性设为CustomersSource 把它的DataField属性设为CustNo 这个TDBEdit构件马上就能显示CustNo字段的值 用户可以在编辑框中键入新的值
显示和编辑多行文本
TDBMemo构件是TMemo构件的数据感知版本 可以显示dBASE和Paradox数据库中备注字段的内容
与TDBEdit不同的是 TDBMemo能够以多行的形式显示文本 同时也允许用户键入多行文本
默认情况下 TDBMemo允许用户修改它显示的文本 如果不想让用户修改文本 只要把ReadOnly属性设为True即可
要允许用户在文本中插入一个制表符 应当把WantTabs属性设为True 否则 当用户按下Tab键 将把输入焦点移走 而不是插入制表符 要限制用户最多可输入的字符数 可以设置MaxLength属性 如果这个属性设为 表示没有限制
此外 ScrollBars属性可以设置要不要加上滚动栏 WordWrap属性可以设置是否允许自动绕回 Alignment属性可以设置文本的对齐方式 在运行期 您可以调用CutToClipboard和CopyToClipboard函数把选择的文本剪切和复制到剪贴板中 调用PasteFromClipboard能够粘贴剪贴板中的文本
lishixinzhi/Article/program/Delphi/201311/8453
建立一个查询,用字段1、字段2……记录子窗体的数据源的各项汇总数据。 主窗体上建立若干个文本框,其字段源分别来源于查询字段1、查询字段2……。如果主窗体的数据源能用这个查询,那么就可以实时刷新了。
绑定窗体记录源的步骤如下:
选择窗体记录源,可以是数据库、Excel文件或其他数据源。
使用数据连接工具,连接到窗体记录源,并设置相关的连接参数。
在窗体中添加控件,用于显示窗体记录源中的数据。
使用数据绑定工具,将控件与窗体记录源绑定起来。
在窗体中添加按钮或其他用户交互控件,用于控制窗体记录源的读取和更新。
运行窗体应用程序,测试窗体记录源的读取和更新功能。
绑定控件数据来源的步骤如下:
在控件中设置数据来源,可以是窗体记录源、数组或其他数据结构。
使用数据绑定工具,将控件与数据来源绑定起来。
在控件中添加交互控件,用于控制数据来源的读取和更新。
运行窗体应用程序,测试控件数
以上就是关于在ACCESS数据库中,窗体控件有哪些类型,它们之间有什么区别全部的内容,包括:在ACCESS数据库中,窗体控件有哪些类型,它们之间有什么区别、VB编程的数据库怎样才能链接到窗体上需要那些控件去 *** 作、access 文本框 控件来源等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)