Call-Anweisung (Visual Basic)
Überträgt die Steuerung an eine Function-Prozedur, eine Sub-Prozedur oder eine Prozedur in einer DLL (Dynamic Link Library).
[ Call ] procedureName [ (argumentList) ]
Bestandteile
procedureName
Erforderlich. Name der aufzurufenden Prozedur.argumentList
Optional. Variablen- oder Ausdrucksliste mit den Argumenten, die beim Aufruf an die Prozedur übergeben werden. Mehrere Argumente werden durch Komma voneinander getrennt. Wenn Sie einen Wert für argumentList angeben, müssen Sie ihn in Klammern setzen.
Hinweise
Mit der Call-Anweisung rufen Sie i. d. R. eine Prozedur auf, die keinen Wert zurückgibt. Wenn die Prozedur einen Wert zurückgibt, wird er von der Call-Anweisung verworfen.
Sie müssen die Call-Anweisung nicht verwenden, wenn Sie eine Prozedur aufrufen. Die Lesbarkeit des Codes wird jedoch dadurch verbessert.
Beispiel
In diesem Beispiel wird veranschaulicht, wie Sie mit der Call-Anweisung die Steuerung an eine Sub-Prozedur, eine systeminterne Funktion und eine Prozedur in einer Dynamic Link Library (DLL) übertragen.
' (1) Call a Sub procedure.
Call printToDebugWindow("Hello World")
...
' The above statement passes control to the following Sub procedure.
Sub printToDebugWindow(ByVal anyString As String)
Debug.WriteLine(anyString)
End Sub
' (2) Call a Visual Basic run-time function (Shell), discard the return value.
Call Shell("C:\WINNT\system32\calc.exe", AppWinStyle.NormalFocus)
' The preceding path is for Windows 2000;
' The Windows XP path is C:\Windows\system32\calc.exe.
' (3) Call a Microsoft Windows DLL procedure. The Declare statement
' must be Private in a class, not in a module.
Private Declare Sub MessageBeep Lib "User32" (ByVal N As Integer)
Sub callBeepDll()
Call MessageBeep(-1)
End Sub