BOFAction 属性、EOFAction 属性

返回或设置一个值指示在 BOF 或 EOF 属性为 True 时 Data 控件进行什么操作。
语法
object.BOFAction [= integer]
object.EOFAction [= integer]
BOFAction 和 EOFAction 属性的语法具有这些部分,
部分
描述
object
对象表达式,其值是“应用于”列表中的对象。
valueinteger
如“设置值”中所示,一个指定某一操作的整数值。
设置值对于 BOFAction 属性来说,integer 设置值为:
设置
值
描述
vbBOFActionMoveFirst
0
MoveFirst(缺省设置):将第一个记录为当前记录。
vbBOFActionBOF
1
BOF:在 Recordset 的开头移动过去将在第一个记录上触发 Data 控件的 Validate 事件,紧跟着是非法 (BOF) 记录上的 Reposition 事件。此刻禁止 Data 控件上的 Move Previous 按钮。
对于 EOFAction 属性来说,integer 设置值为:
设置
值
描述
vbEOFActionMoveLast
0
MoveLast(缺省设置):保持最后一个记录为当前记录。
vbEOFActionEOF
1
EOF:在 Recordset 的结尾移过去,这将在最后一个记录上触发 Data控件的Validate事件,紧跟着是在非法 (EOF) 记录上的 Reposition 事件。此刻禁止 Data 控件上的 MoveNext 按钮。
vbEOFActionAddNew
2
AddNew:移过最后一个记录将在当前记录上触发 Data 控件的 Validate 事件,紧跟着是自动的 AddNew,接下来是在新记录上的 Reposition 事件。
说明这些常数列在“对象浏览器”中的 Visual Basic (VB) 对象库中。
如果将 EOFAction 属性设置为 vbEOFActionAddNew,一旦用户使用 Data 控件将当前记录指针移动到 EOF,当前记录就被定位于复制缓冲区中的新记录上。此刻可以编辑新添加的记录。如果对新记录做出改变,随后又使用 Data 控件移动当前记录的指针,则该记录被自动追加到 Recordset 中。如果未改变此新记录,并将当前记录定位到另一个记录上,则该新记录被放弃。当定位于这个新记录上时,如果使用 Data 控件定位到另一个记录上,则另一个新记录被创建。
当使用代码来操作 Data 控件创建的 Recordset 时,EOFAction 属性无效。仅当使用鼠标操作 Data 控件时它才生效。
在 Data 控件的 Recordset 不返回记录的情况下,或者在最后一个记录被删除之后,使用 EOFAction 属性的 vbEOFActionAddNew 选项可极大地简化代码,因为新记录作为当前记录时总是可编辑的。如果没有允许这个选项,则可能触发一个“无当前记录”错误。
数据类型
Integer