c 语言中out的作用,C语言outData+是什么意思做什么用?

adc63debac484868479d5d4d06e75d7b.png

2006-04-20

关于VB中Data控件的使用VB

在控件箱中的Data控件是VB用于数据库操作的控件,双击Data控件或单击后在体上拖动出控件的大小,都可以看到Data控件的外观 1。Data控件的常用属性  (1)Connect属性  Connect属性用来指定该数据控件所要链接的数据库格式,默认值为Access,其他还包括dBASE、FoxPro、Excel等。   (2)DatabaseName属性  DatabaseName属性是用于确定数据控件使用的数据库的完整路径。如果链接的Access 数据库,就可单击按钮定位。mdb文件。例如,选择"C:\ b"文件。   (3)RecordSource属性  Recor...全部

在控件箱中的Data控件是VB用于数据库操作的控件,双击Data控件或单击后在体上拖动出控件的大小,都可以看到Data控件的外观 1。Data控件的常用属性  (1)Connect属性  Connect属性用来指定该数据控件所要链接的数据库格式,默认值为Access,其他还包括dBASE、FoxPro、Excel等。

(2)DatabaseName属性   DatabaseName属性是用于确定数据控件使用的数据库的完整路径。如果链接的Access 数据库,就可单击按钮定位。mdb文件。例如,选择"C:\ b"文件。

(3)RecordSource属性  RecordSource属性用于指定数据控件所链接的记录来源,可以是数据表名,也可以是查询名。在属性窗口中单击下拉箭头在列表中选出数据库中的记录来源。

例如,选择客户信息表"Customers"。  (4)RecordsetType属性  RecordsetType属性用于指定数据控件存放记录的类型,包含表类型记录集、动态集类型记录集和快照类型记录集,默认为动态集类型。

¡表类型记录集(Table):包含实际表中所有记录,这种类型可对记录进行添加、删除、 修改、查询等操作,直接更新数据。  ¡动态集类型记录集(Dynaset):可以包含来自于一个或多个表中记录的集合,即能从 多个表中组合数据,也可只包含所选择的字段。

这种类型可以加快运行的速度,但不能自动更新数据。  ¡快照类型记录集(Snapshot):与动态集类型记录集相似,但这种类型的记录集只能读不能更改数据。  (5)BOFAction和EOFAction属性  在运行时用户通过单击数据控件的指针按钮可移动记录到开始或结尾,BOFAction属性是指当用户移动到开始时程序将执行的操作,EOFAction指当用户移动到结尾时程序将执行的操作。

EOFAcfion值为0(MoveFirst)是将第一笔记录作为当前记录,为1(BOF);9记录的开头。  EOFAction值为0(Move Last)是将最后一笔记录作为当前记录,为1(EOF)指记录的末尾,为2(AddNew)移动到记录结尾并自动添加一记录。

2。Data控件常用的方法  (1)AddNew方法  AddNew用于添加一个新记录,新记录的每个字段如果有默认值将以默认值表示,如果没有则为空白。   例如,给Data1的记录集添加新记录:  Data1。

Recordset。AddNew  (2)Delete方法  Delete用于删除当前记录的内容,在删除后应将当前记录移到下一个记录。  (3)Edit方法  Edit用于对可更新的当前记录进行编辑修改。

(4)Find方法群组  Find方法群组是用于查找记录,包含FindFirst、FindLast、FindNext和FindPreviou方法,这4种方法查找的起点不同 。 Find方法 查找起点 查找方向 FindFirst 第一个记录 向后查找 FindLast 最后一个记录 向前查找 FindNext 当前记录 向后查找 FindRrevious 当前记录 向前查找   例如,查找"客户号"字段为"10002"的记录:  Datal。

Recordset。FindFirst″客户号=′10002",  If Datal。Recordset。NoMatchThen ′如果没找到   MsgBox″找不到10002号客户″  End If  通常当查找不到符合条件的记录时,需要显示信息提示用户,因此使用NoMatch属性,当使用Find或Seek方法找不到相符的记录时,NoMatch属性为True。

(5)Move方法群组   Move方法群组是用于移动记录,包含MoveFirst、MoveLast、MoveNext和MovePrevious 方法,这四种方法分别是移到第一笔记录、移到最后一笔记录、移到下一笔记录和移到前一笔记录。

注意:  当在最后一个记录时,如果使用了MoveNext方法时EOF的值会变为True,如果再使 用MoveNext方法就会出错。对于MovePrevious方法如果前移,结果也是同样。

(6)Refresh方法  如果DatabaseName、ReadOnly、Exclusive或Connect属性的设置值发生改变,可以使用Refresh方法打开或重新打开数据库,用Refresh方法可以更新数据控件的集合内容。

(7)Seek方法  Seek方法适用于数据表类型(Table)记录集,通过一个已被设置为索引(Index)的字段,查找符合条件的记录,并使该记录为当前记录。  语法:  记录集。

Seek比较式,key1,key2,。。。,key13  例如,当索引为"客户号"字段时,查找客户号为"10005"的记录:  Data1。Recordset。Seek″:″,″10005″  (8)Update方法  Update方法用于将修改的记录内容保存到数据库中。

(9)UpdateControls方法  UpdateControls方法可以从数据控件的记录集中再取回原先的记录内容,即恢复原先值。当在与数据控件链接的控件中修改了记录内容,可以用UpdateControls方法使这些控件显示恢复原来的值。

3。Data控件常用的事件  (1)Reposition事件   Reposition事件是当某一个记录成为当前记录之后触发。通常利用该事件对当前记录的数据内容进行计算,触发该事件有以下几种原因:  ¡单击数据控件的某个按钮,进行记录的移动。

¡使用Move方法群组。  ¡使用Find方法群组。  ¡其他可改变当前记录的属性或方法。  (2)Validate事件  Validate事件与Reposition事件不同,是当某一记录成为当前记录之前,或是在Update、Delete、Unload或Close操作之前触发。

事件的定义如下:  语法:  Private Sub Data1_Validate (action As Integer ,save As Integer)  其中:  ¡action:用来指示引发这种事件的操作。

¡Save:用来指定被链接的数据是否修改了。  例如,在Validate事件触发时确定记录内容是否修改,如果不修改则恢复:  Private Sub Data1_Validate(Action As Integer ,Save As Integer)   Dim mag   if Save=True Then    mag=MsgBox(″要保存修改吗?″ ,vbYesNo)     If mag=vbNo Then      Save=False     Data1。

UpdateControls ′恢复原先内容    End if   EndIf  End Sub  二、与控件绑定  控件箱中的常用控件PictureBox、Label、TextBox、CheckBox、Image、OLE、ListBox 和ComboBox控件都能和Data的Recordset的一个字段绑定,与Data控件绑定的控件称为数据感知控件。

1。数据感知控件的相关属性   ¡DataSource属性:用于在下拉列表中选择想要绑定的控件名称。   ¡DataField属性:用于在下拉列表中选择要显示的字段名称。

2。绑定数据控件的步骤  数据感知控件绑定的过程不需要加入任何程序代码,将文本框txtOrderNo与Dara1绑定的步骤如下:  (1)将数据控件(Data1)放置在窗体中,将数据感知控件TextBox放置在窗体中并改名为txtOrderNo。

(2)设置Data1的DatabaseName属性为"C:\dbbook。Mdb"文件,设置Data1的RecordSource属性为"Orders"表。  (3)设置txtOrderNo的DataSource属性为Data1,设置txtOrderNo的DataField属性为"定单号"字段。

[例Ex_Data1_out]创建一个订购图书的客户信息的输入界面,用文本框绑定Data控件,txtOrderNo、txtCuNo和txtDate分别显示"Customers"表的各字段。

界面设计,窗体由4个按钮、3个标签、3个文本框和1个Dara控件组成。   窗体文本框控件和Data控件的属性设置,标签和按钮属性设置省略。 对 象 控件名 属性名 属性值 TextBox txtCuNotxtOrderNotxtDate TextDataSourceDataFieldTextDataSourceDataFieldTextDataSourceDataField 空Data1客户号空Data1定单号空Data1订购日期 Data Data1 CaptionDataBaseNameRecondSource 客户信息C:\ bOders   程序代码如下:  Option Explicit  Private Sub cmdAdd_Click()   ′添加记录    Data1。

Recordset。AddNew   Data1。Recordset。Update   Data1。Recordset。MoveLast  End Sub  Private Sub cmdDelete_Click()   ′删除记录   Dim mag   mag= MsgBox(″要删除吗? ″ ,vbYesNo,″删除记录″ )   If mag=VbYes Then    Data1。

Recordset。Delere    Data1。Recordset,MoveLast   End If  End Sub  当删除最后一个记录后,如果再删除就会出错,因此每次删除完将当前记录移到最后一个。

Private Sub cmdend_Click()   End  End Sub  Private Sub cmdedit_Click()   ′修改记录   Data1。

Recordset。Edit   Data1。Recordset。Update  End Sub  Private Sub Data1_Validate(Action As Integer, Save As Integer)   ′确定是否修改,如不修改恢复原先内容   Dim mag   If Save = True Then    mag = MsgBox("save?", vbYesNo, "save record")    If mag = vbNo Then     Save = False     Data1。

UpdateControls    End If   End If  End Sub。收起

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值