Visual Basic - Convertir String a Form

Life is soft - evento anual de software empresarial
 
Vista:

Convertir String a Form

Publicado por Pablo (2 intervenciones) el 28/07/2005 19:03:25
Hola, mi problema es el siguiente.
Tengo un procedimiento que lo que hace es abrir un form.

Private Sub EJECUTAR_PROCESO(FORMULARIO As String)
...

El problema es que el parámetro a abrir lo obtengo de una base de datos por lo cual este dato es un string. En FORMULARIO guarda "FORM1".

Necesito hacer una especie de ( FORMULARIO.Show ) pero para esto necesito que FORMULARIO sea de tipo Form. Sino me da un error.
¿Qué se les ocurre hacer?

Bueno, espero haberme explicado; Saludos y muchas gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Convertir String a Form

Publicado por Mr. Sade (323 intervenciones) el 28/07/2005 19:35:14
tu sabes los nombres de tu formularios entonces... no te funciona el famoso IF ?
IF STRING = "FORM1" THEN FORM1.Show
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Convertir String a Form

Publicado por Pablo (2 intervenciones) el 28/07/2005 19:45:39
Muchas gracias,
de esa manera me funciona, pero mi pregunta apuntaba a si había alguna forma para llamarlo sin ningún hardcode...Si algo se les ocurre: muchas gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Convertir String a Form

Publicado por rody (3 intervenciones) el 02/01/2006 20:00:27
y si tenes 500 formularios ?? tenes que poner los nombres de los 500 formularios ??? tiene que haber algo mas.....
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:a ver que si te va

Publicado por Luciano (98 intervenciones) el 03/01/2006 03:29:31
Hola probá comparando el String que recuperás de la bd, en un bucle For Each para recorrer todos los formularios. Mientras recorres los formularios com´parás con un If el string con el form en cuestion utilizando la propiedad Name.
Si da verdadero, lo mandas a una simple Rutina o sub que tenga como parámetro un objeto de tipo Form u Object . Por ejemplo

For i = 0 to Forms.Count - 1

If Str = Forms(i).Name Then
MiSub Forms(i)
end if

Next

Private Sub MiSub (F as Object)

f.Show

end sub

Nota: esto no lo probe y lo estoy escribiendo en el momento, por lo tanto seguro tiene algun error, pero como dice el Bambino,la idea esta!!

:)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar