windows forms llamada por prop name

17/02/2007 - 04:43 por chuli | Informe spam
Alguien sabe como llamar a un formulario windows con vb2005 a través de un
string
en vb6 sería:

set myform = forms("FormName")
myform.show

Gracias

Preguntas similare

Leer las respuestas

#1 SoftJaén
17/02/2007 - 11:21 | Informe spam
"chuli" preguntó:

Alguien sabe como llamar a un formulario windows con vb2005 a
través de un string en vb6 sería:

set myform = forms("FormName")
myform.show



Hola:

Así no se referencia un formulario por su nombre en Visual Basic 6.0, porque
que yo sepa, el índice de la colección Forms debe ser un entero, no una
variable o cadena alfanumérica. Para pasarle el nombre del formulario,
deberías de llamar al método «Add» de la colección «Forms»:

Dim myform As Form

Set myform = Forms.Add("FormName")

myform.Show

En Visual Basic 2005, deberás de utilizar el espacio de nombres
System.Reflection. Si por ejemplo, tu proyecto se llama
«WindoesApplication1», y dentro de él tienes una clase Form llamada «Form2»,
referenciarías dicho formulario ejecutando lo siguiente:

Try
' Referenciamos el ensamblado que se está ejecutando.
'
Dim asm As System.Reflection.Assembly = _
System.Reflection.Assembly.GetExecutingAssembly()

' Obtenemos una referencia de un objeto Form que
' conocemos que se encuentra en el ensamblado actual.
'
Dim frm As Form = _
CType(asm.CreateInstance("WindowsApplication1.Form2"), Form)

frm.Show()

Catch ex As Exception
MessageBox.Show(ex.Message)

End Try

Un saludo

Enrique Martínez
[MS MVP - VB]

Nota informativa: La información contenida en este mensaje, así como el
código fuente incluido en el mismo, se proporciona «COMO ESTÁ», sin
garantías de ninguna clase, y no otorga derecho alguno. Usted asume
cualquier riesgo al poner en práctica, utilizar o ejecutar lo recomendado o
sugerido en el presente mensaje.
Respuesta Responder a este mensaje
#2 chuli
01/03/2007 - 11:55 | Informe spam
Muchas gracias SoftJaén
pd: Tienes toda la razón en lo de vb6
Vamos a probar lo de vb2005...
:-)

"SoftJaén" wrote:

"chuli" preguntó:

> Alguien sabe como llamar a un formulario windows con vb2005 a
> través de un string en vb6 sería:
>
> set myform = forms("FormName")
> myform.show

Hola:

Así no se referencia un formulario por su nombre en Visual Basic 6.0, porque
que yo sepa, el índice de la colección Forms debe ser un entero, no una
variable o cadena alfanumérica. Para pasarle el nombre del formulario,
deberías de llamar al método «Add» de la colección «Forms»:

Dim myform As Form

Set myform = Forms.Add("FormName")

myform.Show

En Visual Basic 2005, deberás de utilizar el espacio de nombres
System.Reflection. Si por ejemplo, tu proyecto se llama
«WindoesApplication1», y dentro de él tienes una clase Form llamada «Form2»,
referenciarías dicho formulario ejecutando lo siguiente:

Try
' Referenciamos el ensamblado que se está ejecutando.
'
Dim asm As System.Reflection.Assembly = _
System.Reflection.Assembly.GetExecutingAssembly()

' Obtenemos una referencia de un objeto Form que
' conocemos que se encuentra en el ensamblado actual.
'
Dim frm As Form = _
CType(asm.CreateInstance("WindowsApplication1.Form2"), Form)

frm.Show()

Catch ex As Exception
MessageBox.Show(ex.Message)

End Try

Un saludo

Enrique Martínez
[MS MVP - VB]

Nota informativa: La información contenida en este mensaje, así como el
código fuente incluido en el mismo, se proporciona «COMO ESTÁ», sin
garantías de ninguna clase, y no otorga derecho alguno. Usted asume
cualquier riesgo al poner en práctica, utilizar o ejecutar lo recomendado o
sugerido en el presente mensaje.




email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida