ProcStartLine 屬性返回一個(gè)只讀 Long 值,該值標(biāo)識標(biāo)準(zhǔn)模塊或類模塊中一個(gè)指定過程的起始行。
expression.ProcStartLine(ProcName, ProcKind)
expression 必需。返回“應(yīng)用于”列表中的一個(gè)對象的表達(dá)式。
ProcName 必需 String 型。模塊中過程的名稱。
ProcKind 必需 vbext_ProcKind 型。是用于指定過程類型的固有常量。該常量可以是下列值之一:
常量 |
說明 |
vbext_pk_Get |
Property Get 過程。 |
vbext_pk_Let |
Property Let 過程。 |
vbext_pk_Proc |
Sub 或 Function 過程。 |
vbext_pk_Set |
Property Set 過程。 |
ProcStartLine 屬性僅在使用 Visual Basic 時(shí)才可用。
過程以說明語句和編譯常量打頭,然后是可用下列一個(gè)語句表示的過程定義:
? | Sub 語句。 |
? | Function 語句。 |
? | Property Get 語句。 |
? | Property Let 語句。 |
? | Property Set 語句。 |
ProcStartLine 屬性返回指定過程起始處的行號。過程的起始處可以包含位于過程定義之前的說明語句或編譯常量。
若要確定過程定義的起始行,請使用 ProcBodyLine 屬性,該屬性返回一個(gè)以 Sub、Function、Property Get、Property Let 或 Property Set 語句開始的行的行號。
如果過程定義是過程的第一行,則 ProcStartLine 和 ProcBodyLine 屬性可以有相同的值。如果過程定義不是過程的第一行,ProcBodyLine 屬性值將比 ProcStartLine 屬性值大。
如果選中了“過程分隔符”選項(xiàng),可以更容易確定過程起始的位置。選中該選項(xiàng)之后,在一個(gè)過程的結(jié)尾和下一個(gè)過程的開頭之間將有一行間隔。過程分隔符下面的第一行代碼(或空行)是下一過程的第一行,該行即為 ProcStartLine 屬性的返回值?!斑^程分隔符”選項(xiàng)位于“選項(xiàng)”對話框中的“編輯器”選項(xiàng)卡上,單擊“工具”菜單上的“選項(xiàng)”即可打開該對話框。
ProcStartLine 屬性不區(qū)分 Sub 和 Function 過程,但是區(qū)分 Property 過程的每一類型。
下面的示例將顯示一條消息,表明特定窗體模塊中特定過程的起始位置。
Dim strForm As String
Dim strProc As String
strForm = "Products"
strProc = "Form_Activate"
MsgBox "The procedure " & strProc & " starts on line " & _
Forms(strForm).Module.ProcStartLine(strProc, vbext_pk_Proc) & "."