Jump to content

Recommended Posts

Posted

boas pessoal gostaria de saber como posso fechar uma MDIchild(não sei se é este o nome), ou seja, tenho um menu principal e alguns subformularios (filhos- que sao abertos dentro desse menu principal) e quero fecha-lo quando carrego num botão para abrir outro, ja consegui fazer com que ele nao seja aberto 2 vezes.

  For Each f As Form In Me.MdiChildren

            If f.Text = "vendedores" Then

                MessageBox.Show("O formulário vendedores já está aberto.")

                Exit Sub

            End If

        Next

        vendedores.MdiParent = Me

        vendedores.Show()

mas mesmo assim se o abrir uma vez e depois abrir outro formulario e tentar voltar ao 1º nao dá diz que já está aberto.. o que queria era mesmo fechar o 1º quando o 2º fosse aberto.. algum sabe como fazer isto?

Posted

Boas,

Podes fazer ver se o form está aberto pelo nome e fecha-lo. Depois abres o que queres abrir.

Tens aqui um exemplo simples:

        Dim frmOpen As Form = My.Application.OpenForms("test")
        If frmOpen IsNot Nothing Then
            frmOpen.Dispose()
        End If

        Dim frm As New MDIChildForm
        frm.Name = "test"
        frm.MdiParent = Me
        frm.Show()
Posted

Boas,

Podes fazer ver se o form está aberto pelo nome e fecha-lo. Depois abres o que queres abrir.

Tens aqui um exemplo simples:

        Dim frmOpen As Form = My.Application.OpenForms("test")
        If frmOpen IsNot Nothing Then
            frmOpen.Dispose()
        End If

        Dim frm As New MDIChildForm
        frm.Name = "test"
        frm.MdiParent = Me
        frm.Show()

o programa diz que

"        Dim frm As New MDIChildForm"

mdichildform nao está definido

Posted

sim está, só um é que nao, porque este está como child e o que quero é que ele abra outro child..

Tu comes palavras e assim é dificíl.

Explica bem o que queres, por ninguém está a ver o programa e dificilmente adivinha.

Posted

Tu comes palavras e assim é dificíl.

Explica bem o que queres, por ninguém está a ver o programa e dificilmente adivinha.

Peço desculpa :$

Então é o seguinte, tenho um formulario principal e outros secundários e no principal tenho um espaço reservado para abrir formularios secundarios, mas eu abro-os consoante o botão que escolher no formulario principal, mas a minha duvida é como é que faço para que atraves de um formulario secundário, que está dentro do formulario principal, abrir um outro secundário, nesse mesmo espaço reservado.

tudo isto, porque o VB da-me este erro:

O formulário que foi especificado como sendo MdiParent para este formulário não é um MdiContainer.

Nome do parâmetro: value

Posted

Na form parent crias uma função similar ao menu que usas para abrir e fechar as form child, que irás usar através da tal form.

Algo do estilo no form Parent

Public Sub close_frmchld(nomeForm As String)

código para fechar a form nomeForm

End Sub

E no form child só chamavas frmMain.close_frmchld(nome da form)

Knowledge to the masses


Posted

Na form parent crias uma função similar ao menu que usas para abrir e fechar as form child, que irás usar através da tal form.

Algo do estilo no form Parent

Public Sub close_frmchld(nomeForm As String)

código para fechar a form nomeForm

End Sub

E no form child só chamavas frmMain.close_frmchld(nome da form)

e como faço para abrir um child no espaço de um child? ou seja abrir um child num child

Posted

Tens de mostrar uma imagem ... acho que ninguém está a entender.

por exemplo:

http://img139.imageshack.us/img139/9572/60331142.png

o que estou a fazer é tendo um form principal que engloba tudo (sendo este o mdiparent) abrir um form child no panel.. e o que queria era do child abrir outro child, no mesmo espaço.. se é que me faço entender..

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.