problemas con formularios mdi (urgente)

21/04/2006 - 04:00 por Ricardo | Informe spam
hola amigos, queria hacerles una consulta tengo un formulario frmPrincipal
cuya propiedad ismdiconteiner es true y desde la barra de menu ejecuto el
siguiente codigo :

Private Sub mnuStockGeneral_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles mnuStockGeneral.Click

Dim objFrm As New frmfarconstk

objFrm.MdiParent = Me
objFrm.Show()
End Sub

hasta ah todo correcto el objeto referenciado al formulario frmfarconstk
aparece correctamente mi problema ocurre cuando desde este formulario tengo
que llamar a otro formulario para mostrar un reporte, lo hago de la siguiente
manera:

Dim objFrm As New frmrptstock
Dim objPri As frmPrincipal

objFrm.MdiParent = objPri
objFrm.Show()

pero el formulario del reporte (rmrptstock) no aparece como un mdi, alguien
podria ayudarme con el código...

Gracias anticipadamente por la ayuda...

Preguntas similare

Leer las respuestas

#1 Jorge Serrano [MVP VB]
21/04/2006 - 06:53 | Informe spam
Hola Ricardo,

no entiendo bien la segunda parte del código y porqué no lo haces como la
primera parte del código.

Evidentemente haciéndolo como lo haces tú, el segundo formulario no será
contenedor MDI (formulario MDI hijo).

Para lograrlo, debes hacer algo similar a lo que hacías anteriormente:

Dim objFrm As New frmrptstock
objFrm.MdiParent = Me
objFrm.Show()

Si pones delante:
Dim objPri As frmPrincipal

No estás haciendo referencia al formulario MDI padre cargado.

Sí lo harías de esta otra forma:

Dim objFrm As New frmrptstock
Dim objPri As frmPrincipal = Me
objFrm.MdiParent = objPri
objFrm.Show()

Espero que esto te ayude.

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/


"Ricardo" wrote:

hola amigos, queria hacerles una consulta tengo un formulario frmPrincipal
cuya propiedad ismdiconteiner es true y desde la barra de menu ejecuto el
siguiente codigo :

Private Sub mnuStockGeneral_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles mnuStockGeneral.Click

Dim objFrm As New frmfarconstk

objFrm.MdiParent = Me
objFrm.Show()
End Sub

hasta ah todo correcto el objeto referenciado al formulario frmfarconstk
aparece correctamente mi problema ocurre cuando desde este formulario tengo
que llamar a otro formulario para mostrar un reporte, lo hago de la siguiente
manera:

Dim objFrm As New frmrptstock
Dim objPri As frmPrincipal

objFrm.MdiParent = objPri
objFrm.Show()

pero el formulario del reporte (rmrptstock) no aparece como un mdi, alguien
podria ayudarme con el código...

Gracias anticipadamente por la ayuda...
Respuesta Responder a este mensaje
#2 Ricardo
21/04/2006 - 07:26 | Informe spam
Mas bien lo que necesito es que el formulario frmptstock sea mdi pero lo
llamo desde el formulario frmfarconstk. El formulario frmPrincipal
es el que tiene la propiedad ismdiconteiner es true osea el contenedor.

los eventos son los siguiente
1- desde el formulario frmPrincipal llamo al frmfarconstk

Dim objFrm As New frmfarconstk

objFrm.MdiParent = Me
objFrm.Show()
End Sub

2.- frmfarconstk aparece como formulario hijo (lo cual es correcto)
desde aca necesito llamar al frmrptstock para que tabien aparesca como
formulario hijo.
Respuesta Responder a este mensaje
#3 Ricardo
21/04/2006 - 07:28 | Informe spam
Mas bien lo que necesito es que el formulario frmptstock sea mdi pero lo
llamo desde el formulario frmfarconstk. El formulario frmPrincipal
es el que tiene la propiedad ismdiconteiner es true osea el contenedor.

los eventos son los siguiente
1- desde el formulario frmPrincipal llamo al frmfarconstk

Dim objFrm As New frmfarconstk

objFrm.MdiParent = Me
objFrm.Show()
End Sub

2.- frmfarconstk aparece como formulario hijo (lo cual es correcto)
desde aca necesito llamar al frmrptstock para que tabien aparesca como
formulario hijo.


Gracias anticipadamente por la ayuda...
Respuesta Responder a este mensaje
#4 Carlos Gómez
21/04/2006 - 08:02 | Informe spam
No se si entendido bien, pero si lo que quieres que el formulario frmptstock
no sea mdi puedes hacer

dim objFrm As New frmrptstock
objFrm.ShowDialog
objFrm.Dispose
objFrm = Nothing
Respuesta Responder a este mensaje
#5 Eduardo A. Morcillo [MS MVP VB]
21/04/2006 - 08:26 | Informe spam
2.- frmfarconstk aparece como formulario hijo (lo cual es correcto)
desde aca necesito llamar al frmrptstock para que tabien aparesca como
formulario hijo.



frmfarconstk tiene en la propiedad MdiParent la referencia al formulario MDI
(la cual asignaste al mostrar el formulario) entonces simplemente tienes que
setear la propiedad MdiParent de frmrptstock con el valor de MdiParent de
frmfarconstk:

Dim objFrm As New frmrptstock
objFrm.MdiParent = Me.MdiParent
objFrm.Show()

Eduardo A. Morcillo [MS MVP VB]
http://www.mvps.org/emorcillo
http://mvp.support.microsoft.com/pr...4EF5A4191C
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida