CallByName-Funktion

Aktualisiert: November 2007

Führt eine Methode für ein Objekt aus oder legt eine Eigenschaft für ein Objekt fest bzw. gibt eine Eigenschaft für ein Objekt zurück.

Public Function CallByName( _
   ByVal ObjectRef As System.Object, _
   ByVal ProcName As String, _
   ByVal UseCallType As CallType, _
   ByVal Args() As Object _
) As Object

Parameter

  • ObjectRef
    Erforderlich. Object. Ein Zeiger, der auf das Objekt zeigt, das die Eigenschaft oder Methode verfügbar macht.

  • ProcName
    Erforderlich. String. Ein Zeichenfolgenausdruck, der den Namen der Eigenschaft oder Methode des Objekts enthält.

  • UseCallType
    Erforderlich. Ein Enumerationsmember des Typs CallType-Enumeration, der den Typ der Prozedur darstellt, die aufgerufen wird. Der Wert von CallType kann Method, Get oder Set sein.

  • Args
    Optional. ParamArray. Ein Parameterarray, das die Argumente enthält, die an die aufgerufene Eigenschaft bzw. Methode übergeben werden sollen.

Ausnahmen

Ausnahmetyp

Fehlernummer

Bedingung

ArgumentException

5

Ungültiger UseCallType-Wert; muss Method, Get oder Set sein.

Beachten Sie die Spalte "Fehlernummer", wenn Sie Visual Basic 6.0-Anwendungen aktualisieren, die eine unstrukturierte Fehlerbehandlung verwenden. (Sie können die Fehlernummer mit der Number-Eigenschaft (Err-Objekt) vergleichen.) Wenn möglich, sollten Sie jedoch erwägen, eine solche Fehlersteuerung durch eine Übersicht über die strukturierte Ausnahmebehandlung für Visual Basic zu ersetzen.

Hinweise

Die CallByName-Funktion wird zur Laufzeit verwendet, um eine Eigenschaft abzurufen oder festzulegen oder um eine Methode aufzurufen.

Beispiel

Im folgenden Beispiel wird mit CallByName in der ersten Zeile die Text-Eigenschaft eines Textfeldes festgelegt, in der zweiten Zeile der Wert der Text-Eigenschaft abgerufen und in der dritten Zeile die Move-Methode aufgerufen, mit der das Textfeld verschoben wird.

' Imports statements must be at the top of a module.
Imports Microsoft.VisualBasic.CallType
Sub TestCallByName1()
    'Set a property.
    CallByName(TextBox1, "Text", CallType.Set, "New Text")

    'Retrieve the value of a property.
    MsgBox(CallByName(TextBox1, "Text", CallType.Get))

    'Call a method.
    CallByName(TextBox1, "Hide", CallType.Method)
End Sub

Im nächsten Beispiel werden mit der CallByName-Funktion die Add-Methode und die Item-Methode eines Auflistungsobjekts aufgerufen.

Public Sub TestCallByName2()
    Dim col As New Collection()

    'Store the string "Item One" in a collection by 
    'calling the Add method.
    CallByName(col, "Add", CallType.Method, "Item One")

    'Retrieve the first entry from the collection using the 
    'Item property and display it using MsgBox().
    MsgBox(CallByName(col, "Item", CallType.Get, 1))
End Sub

Hinweise für Entwickler intelligenter Geräte

Diese Funktion wird nicht unterstützt.

Anforderungen

Namespace:Microsoft.VisualBasic

**Modul:**Interaction

**Assembly:**Visual Basic Runtime Library (in Microsoft.VisualBasic.dll)

Siehe auch

Konzepte

Parameterarrays

Aufrufen einer Eigenschaft oder Methode mit einem Zeichenfolgennamen

Referenz

CallType-Enumeration

ArgumentException