CodeContextObject 属性

expandtri全部显示

使用 CodeContextObject 属性可以确定其中的或 Visual Basic 代码正在执行的对象。Object 型,只读。

expression.CodeContextObject

expression     必需。返回“应用于”列表中的一个对象的表达式。

设置

CodeContextObject 属性由 Microsoft Access 设置,而且在所有视图中都是只读的。

说明

Screen 对象的 ActiveControlActiveDataAccessPageActiveDatasheetActiveFormActiveReport 属性始终返回当前获得焦点的对象。带有焦点的对象既可能是也可能不是当前正在运行宏或 Visual Basic 代码的对象,例如 Visual Basic 代码可以执行一个隐藏窗体的 Timer 事件。

示例

以下示例中,CodeContextObject 属性在函数中用于识别发生错误的对象的名称。对象名称然后显示在消息框标题及错误信息正文中。示例中,Error 语句用在命令按钮的 click 事件中以产生错误。

Private Sub Command1_Click()

    On Error GoTo Command1_Err

    Error 11                    ' Generate divide-by-zero error.

    Exit Sub

    Command1_Err:

        If ErrorMessage("Command1_Click() Event", vbYesNo + _

                vbInformation, Err) = vbYes Then

            Exit Sub

        Else

            Resume

        End If

End Sub

Function ErrorMessage(strText As String, intType As Integer, _

        intErrVal As Integer) As Integer

    Dim objCurrent As Object

    Dim strMsgboxTitle As String

    Set objCurrent = CodeContextObject

    strMsgboxTitle = "Error in " & objCurrent.Name

    strText = strText & "Error #" & intErrVal _

        & " occured in " & objCurrent.Name

    ErrorMessage = MsgBox(strText, intType, strMsgboxTitle)

    Err = 0

End Function