Monday, February 21, 2022

CallByName-Funktion

Führt eine Methode eines Objekts aus oder legt eine Eigenschaft eines Objekts fest oder gibt sie zurück.

Syntax

CallByName ( Objekt , Prozessname , Anruftyp [, Argumente ()] )

Die Syntax der CallByName- Funktion hat die folgenden Argumente:

Streit

Beschreibung

Objekt

Erforderlich. Variante ( Objekt ). Der Name des Objekts, auf dem die Funktion ausgeführt wird.

procname

Erforderlich. Variante ( Zeichenfolge ). Ein Zeichenfolgenausdruck, der den Namen einer Eigenschaft oder Methode des Objekts enthält.

Anrufart

Erforderlich. Konstant . Eine Konstante vom Typ vbCallType , die den Typ der aufgerufenen Prozedur darstellt.

Argumente ()

Optional. Variante ( Array ).


Bemerkungen

Die CallByName- Funktion wird zum Abrufen oder Festlegen einer Eigenschaft oder zum Aufrufen einer Methode zur Laufzeit mithilfe eines Zeichenfolgennamens verwendet.

Im folgenden Beispiel verwendet die erste Zeile CallByName , um die MousePointer- Eigenschaft eines Textfelds festzulegen, die zweite Zeile ruft den Wert der MousePointer- Eigenschaft ab, und die dritte Zeile ruft die Move -Methode auf, um das Textfeld zu verschieben:

 CallByName Text1, "MousePointer", vbLet, vbCrosshair
Result = CallByName (Text1, "MousePointer", vbGet)
CallByName Text1, "Move", vbMethod, 100, 100

Beispiel

Hinweis: Die folgenden Beispiele veranschaulichen die Verwendung dieser Funktion in einem Visual Basic for Applications (VBA)-Modul. Um weitere Informationen zum Arbeiten mit VBA zu erhalten, wählen Sie Entwicklerreferenz in der Dropdown-Liste neben Suchen aus und geben Sie einen oder mehrere Begriffe in das Suchfeld ein.

In diesem Beispiel wird die CallByName- Funktion verwendet, um die Move -Methode einer Befehlsschaltfläche aufzurufen.

Das Beispiel verwendet auch ein Formular ( Form1 ) mit einer Schaltfläche ( Command1 ) und einer Bezeichnung ( Label1 ). Wenn das Formular geladen wird, wird die Caption -Eigenschaft des Labels auf den Namen der aufzurufenden Methode gesetzt, in diesem Fall "Move". Wenn Sie auf die Schaltfläche klicken, ruft die CallByName- Funktion die Methode auf, um die Position der Schaltfläche zu ändern.

 Option Explicit
Private Sub Form_Load()
Label1.Caption = "Move"' Name of Move method.
End Sub
Private Sub Command1_Click()
If Command1.Left <> 0 Then
CallByName Command1, Label1.Caption, vbMethod, 0, 0
Else
CallByName Command1, Label1.Caption, vbMethod, 500, 500
End If

No comments:

Post a Comment