Sección de códigos , trucos y ejemplos para visual basic


153 - CallByName

<Volver> - Anterior - Siguiente



 

Ejemplo de la función CallByName de Visual basic para llamar a funciones, métodos y propiedades por su nombre

 

Acá podés ver algunos ejemplos que hice bien simples de esta función que permite, no solo ejecutar y llamar a funciones y rutinas por su nombre, si no también recuperar el valor de propiedades y escribirlas, es decir cambiarlas llamandolas por su nombre

El siguiente código tiene cuatro ejemplos: El primer llama a una SubRutina. El segundo Llama a una función con parámetros. En este caso al tener parámetros, a CallByname hay que especificarcelos en el último parámetro de la llamada a CallByName. El tercer ejemplo cambia el valor de la propiedad BackColor del formulario. El cuarto recupera el valor de una propiedad de un objeto, en este caso el Caption del Formulario.

En estos dos últimos casos, el tercer parámetro de CallByname es VbLet (cambia la propiedad) y VbGet (recupera la propiedad).

En el caso de las rutinas y funciones, se utiliza VbMethod especificado en tercer parámetro de la función.

 

Nota: Si se utiliza con objetos, hay que utilizar en ves de vbLet, VbSet

 

Para el ejemplo colocar cuatro CommandButton y el siguiente código fuente en un Form

 

Otra cosa importante. Si la función a llamar está por ejemplo en una clase, hay que especificar en el primer parámetro de CallByName el nombre del módulo de clase.

 

Un ejemplo

En el módulo de clase

 

Public Function Sumar(Valor1 As Long, Valor2 As Long) As Long
Sumar = Valor1 + Valor2
End Function


y para llamar al método-función sumar con CallByname desde un formulario:

Dim oClass1 As New Class1


    'Le envía a CallBayname el nombre del módulo en el primero parámetro
    Resultado = CallByName(Class1, "Sumar", VbMethod, 100, 200)

    'Muestra el resultado
    MsgBox Resultado, vbInformation

 



Buscar en Recursos vb