WillMove 和 MoveComplete 事件 (ADO)
WillMove 事件在挂起操作更改 Recordset 中的当前位置之前进行调用。 Recordset 中的当前位置发生更改后,将调用 MoveComplete 事件。
语法
WillMove adReason, adStatus, pRecordset
MoveComplete adReason, pError, adStatus, pRecordset
参数
adReason
一个 EventReasonEnum 值,用于指定此事件的原因。 它的值可以是 adRsnMoveFirst、adRsnMoveLast、adRsnMoveNext、adRsnMovePrevious、adRsnMove 或 adRsnRequery。
pError
一个 Error 对象。 它描述了在 adStatus 的值为 adStatusErrorsOccurred 时发生的错误;否则不设置此参数。
adStatus
一个 EventStatusEnum 状态值。
调用 WillMove 时,如果导致事件的操作成功,则此参数设置为 adStatusOK。 如果此事件无法请求取消挂起的操作,则设置为 adStatusCantDeny。
调用 MoveComplete 事件时,如果导致事件的操作成功,则此参数设置为 adStatusOK;如果操作失败,则设置为 adStatusErrorsOccurred。
在 WillMove 返回之前,将此参数设置为 adStatusCancel 以请求取消挂起的操作,或将此参数设置为 adStatusUnwantedEvent 以阻止后续通知。
在 MoveComplete 返回之前,请将此参数设置为 adStatusUnwantedEvent 以阻止后续通知。
pRecordset
一个 Recordset 对象。 发生此事件的 Recordset。
备注
由于以下 Recordset 操作,可能会发生 WillMove 或 MoveComplete 事件:Open、Move、MoveFirst、MoveLast、MoveNext、MovePrevious、AddNew 和 Requery。 由于以下属性,可能会发生这些事件:Filter、Index、Bookmark、AbsolutePage 和 AbsolutePosition。 如果子 Recordset 连接了 Recordset 事件并且父 Recordset 被移动,则也会发生这些事件。
必须将每个可能的 adReason 值的 adStatus 参数设置为 adStatusUnwantedEvent,以便完全停止包含 adReason 参数的任何事件的事件通知。