Obtener la instancia de un objeto a partir de su nombre

22/02/2006 - 18:06 por Cesc | Informe spam
Tengo una serie de objetos en un módulo público y cada uno con un nombre
diferente. Necesito acceder al objeto correspondiente a partir de una cadena
de texto que representa su nombre.

Public Instancia1 as New Class1
Public Instancia2 as New Class2
.
Dim Objeto as Class1
Objeto = ¿ObtenerInstancia?("Instancia1")
 

Leer las respuestas

#1 Jorge Serrano [MVP VB]
22/02/2006 - 18:17 | Informe spam
Hola Cesc,

este es mi ejemplo:

Module1.vb
Module Module1
Public Instancia1 As New Class1
Public Instancia2 As New Class2
End Module

Class1.vb
Public Class Class1
Public Function Suma(ByVal Val1 As Integer, ByVal Val2 As Integer) As
Integer
Return Val1 + Val2
End Function
End Class

Class2.vb
Public Class Class2
Public Function Suma(ByVal Val1 As Integer, ByVal Val2 As Integer) As
Integer
Return Val1 + Val2
End Function
End Class

Form1.vb
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click
Dim Objeto As Class1
Objeto = Instancia1
MessageBox.Show(Objeto.Suma(2, 3))
End Sub
End Class


Espero que sea esto lo que preguntas.

Un saludo.

Jorge Serrano Pérez
Microsoft MVP VB.NET
PortalVB.com
http://www.portalvb.com/
Weblog de Jorge Serrano
http://weblogs.golemproject.com/jorge/


"Cesc" wrote:

Tengo una serie de objetos en un módulo público y cada uno con un nombre
diferente. Necesito acceder al objeto correspondiente a partir de una cadena
de texto que representa su nombre.

Public Instancia1 as New Class1
Public Instancia2 as New Class2
.
Dim Objeto as Class1
Objeto = ¿ObtenerInstancia?("Instancia1")

Preguntas similares