FECHAR FORM

JOHNHEY 16/11/2012 19:40:40
#414359
Tenho um form de cadastro, no mesmo tenho um botão de procura que abre outro form para pesquisa, gostaria que ao clicar no botão sair do primeiro form o formulario de pesquisa também fosse fechado.
ja utilizei:

pesquisa.close()
pesquisa.hide() e não fecha
JOHNHEY 16/11/2012 20:21:28
#414361
para abrir o formulário uso o seguinte código:

Try
[ô]Verifica se o form já esta aberto e traz para frente
For Each child In Me.MdiChildren
If TypeOf child Is Registos Then
If child.Text = [Ô]Registo de Paises[Ô] Then
child.WindowState = FormWindowState.Normal
child.Focus()
tabela = [Ô]TBPais[Ô]
Exit Sub
End If
End If
Next
[ô]caso não esteja aberto ele abre
Dim frm As New Registos
frm.MdiParent = Me
variaveldcf = [Ô]Registo de Paises[Ô] [ô] atribui um valor a variavel
frm.Show()
tabela = [Ô]TBPais[Ô]
[ô]Se der erro exibe o erro
Catch EX As Exception
MsgBox([Ô]erro - [Ô] + EX.Message)
End Try
OMAR2011 16/11/2012 20:34:17
#414363
Hide não fecha e sim oculta.
Me.Close()
Form2.Close()
JOHNHEY 16/11/2012 20:41:03
#414364
já coloquei desta forma e não funciona:
Private Sub cmdsair_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdsair.Click
Me.Close() [ô]Fecha a janela
Pesquisa.Close()
End Sub
FEDERHEN 19/11/2012 08:24:23
#414408
No VB6 fecha os forms assim:
Unload Me
Unload Form2

Se não for VB6, então o tópico está com classificação ERRADA.
MITSUEDA 20/11/2012 08:05:45
#414482
Resposta escolhida
Pode ocorrer de o Form não estar aberto na hora de vc fechar então vc teria que verificar se ele esta aberto.

Dim frm As Form

For Each frm In My.Application.OpenForms
If frm Is My.Forms.Pesquisa Then
frm.Close()
end if
Next

Isso em VB.Net!

Espero ter ajudado.

Abraço
MARCELO.TREZE 21/11/2012 07:27:51
#414507
O colega FEDERHEM já deu a solução para o caso de ser VB6, mas não é o caso então o post está no lugar errado, encerre o mesmo e abra-o em vb.net lá terá a solução.

JOHNHEY 19/12/2012 07:46:32
#416172
Ja resolvi, coloquei o mesmo código para abrir, só que ao invés de abrir pedi para fechar:


Try
[ô]Verifica se o form já esta aberto e traz para frente
For Each child In Me.MdiChildren
If TypeOf child Is Registos Then
If child.Text = [Ô]Registo de Paises[Ô] Then
pesquisa.close
End If
End If
Next
[ô]Se der erro exibe o erro
Catch EX As Exception
MsgBox([Ô]erro - [Ô] + EX.Message)
End Try
Tópico encerrado , respostas não são mais permitidas