| |||
Problemas con formulario mdi Tengo una aplicaicion con un formulario mdi y al iniciar muestra un formulario de login, al cargarse la aplicacion deshabilito el menu del formulario padre, pero no se como, una vez validado el usuario, volverlos a habiltar |
| |||
no se si es que nadie sabe como hacerlo o lo mas probable, no me entedieron, por eso aca va el codigo. Este es el formulario principal que es el mdi padre, que al hacer en load hace lo siguiente: Private Sub Principal_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Me.MenuItem1.Visible = False Me.MenuItem2.Visible = False Me.MenuItem3.Visible = False Me.MenuItem4.Visible = False Me.MenuItem5.Visible = False Me.MenuItem6.Visible = False Me.MenuItem7.Visible = False Me.MenuItem8.Visible = False Me.MenuItem9.Visible = False Me.MenuItem10.Visible = False Me.MenuItem11.Visible = False Me.Enabled = False Dim log As New login log.MdiParent = Me log.Show() End Sub Oculta el menu y llama a un formulario de log in, lo que no se como hacer es que una vez que se valide al usuaeio volver a poner en true a el menu, por que no se puede hacer algo como principal.MenuItem11.Visible = True |
| |||
Fuera del load del MDI haz lo siguiente, justo debajo del "Codigo Generado ..." Public shared MDI as FormularioMdi (FormularioMdi es el nombre de tu Mdi y MDI es una variable que pongo yo por que me da la gana de llamarla asi) Una vez eso, ya te deberia dejar activar el menu.
__________________ Charlie. |
| |||
Gracias por responder, pero no me anduvo, este es el codigo del formulario principal: Private Sub Principal_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Me.MenuItem1.Visible = False Me.MenuItem2.Visible = False Me.MenuItem3.Visible = False Me.MenuItem4.Visible = False Me.MenuItem5.Visible = False Me.MenuItem6.Visible = False Me.MenuItem7.Visible = False Me.MenuItem8.Visible = False Me.MenuItem9.Visible = False Me.MenuItem10.Visible = False Me.MenuItem11.Visible = False 'Me.Enabled = False Dim log As New login log.MdiParent = Me log.Show() End Sub Public Shared MDI As Principal pero en el formulario de login me pone como MDI una variable no declarada |
| |||
Es que tienes que poner asi en el formulario de login: En el evento de closed: Principal.MDI.menuitem12.enabled=true Lo de public Shared MDI As Principal ponlo mejor arriba del todo.
__________________ Charlie. |
| |||
Lanzar aplicación desde Sub Main() No veo Roly porque tienes que iniciar tu aplicación lanzando el formulario principal, mejor es hacerlo desde un módulo que contenga el procedimiento main, por ejemplo asi: Public Sub main() ' Presentación del formulario principal. Application.Run(New frmLogin()) End Sub Como ves lo primero que lanzas es el formulario login, asi no tienes porque estar haciendo invisible / visible los MenuItems del formulario principal!. ![]() |