CallByName (Función)

Actualización: noviembre 2007

Ejecuta un método en un objeto o establece o devuelve una propiedad en un objeto.

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

Parámetros

  • ObjectRef
    Requerido. Object. Puntero al objeto que expone la propiedad o el método.

  • ProcName
    Requerido. String. Expresión de cadena que contiene el nombre de la propiedad o método en el objeto.

  • UseCallType
    Requerido. Un miembro de enumeración de tipo CallType (Enumeración) que representa el tipo de procedimiento que se llama. El valor de CallType puede ser Method, Get o Set.

  • Args
    Opcional. ParamArray. Matriz de parámetros que contiene los argumentos que se van a transferir a la propiedad o método al que se llama.

Excepciones

Tipo de excepción

Número de error

Condición

ArgumentException

5

Valor UseCallType no válido; debe ser Method, Get o Set.

Consulte la columna "Número de error" si está actualizando aplicaciones de Visual Basic 6.0 que utilizan el control de errores no estructurado. (Se puede comparar el número de error con respecto a Number (Propiedad, objeto Err)). Sin embargo, siempre que sea posible, se debe considerar la sustitución de dicho control de errores por Información general sobre el control estructurado de excepciones de Visual Basic.

Comentarios

La función CallByName se utiliza en tiempo de ejecución para obtener o establecer una propiedad, o bien para invocar un método.

Ejemplo

En el siguiente ejemplo, en la primera línea se utiliza CallByName para establecer la propiedad Text de un cuadro de texto, en la segunda línea se recupera el valor de la propiedad Text y en la tercera línea se llama al método Move para desplazar el cuadro de texto.

' 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

En el siguiente ejemplo, se utiliza la función CallByName para llamar a los métodos Add e Item de un objeto de la colección.

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

Notas para desarrolladores de dispositivos inteligentes

Esta función no es compatible.

Requisitos

Espacio de nombres:Microsoft.VisualBasic

**Módulo:**Interaction

**Ensamblado:**Visual Basic Runtime Library (en Microsoft.VisualBasic.dll)

Vea también

Conceptos

Matrices de parámetros

Llamar a una propiedad o método mediante un nombre de cadena

Referencia

CallType (Enumeración)

ArgumentException