FECHAMENTO DE FORM

JOHNHEY 20/08/2010 14:36:27
#350809
como faço para fechar somente o form actual, vamos supor que tenho 3 forms aberto, mas quero fechar somente o actual.
VISUALANDERSON 20/08/2010 14:54:46
#350811
Bo atarde amigão!
me.clouse, é assim
JOHNHEY 20/08/2010 15:05:17
#350812
esqueci de dizer algumas coisas;

tenho um mdiprincipal e nele tenho um menu com varios form, tipo: form1, form2, form3.
vamos supor que abri os 3 form no mdi.

no mesmo menu tenho uma opção fechar form, gostaria que ele fechasse o form que tenho activo.
JONATHANSTECKER 20/08/2010 15:32:39
#350813
Public Class Form1

Dim FormFilho As New Form2

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
FormFilho.MdiParent = Me
FormFilho.Show()
End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
If FormFilho.Text = [Ô]Form2[Ô] Then
FormFilho.Close()
End If
End Sub

End Class
JOHNHEY 23/08/2010 11:00:58
#350972
infelizmente não da certo. tenho os form assim:

form1 esta com o nome de frmprocesso
form2 esta com o nome de frmestoque
form3 esta com o nome de frmprodutos
e mdiprincipal
no mdiprincipal tenho um menu [Ô]Arquivo[Ô] com um submenu [Ô] fechar tela actual[Ô], vamos supor que a frmestoque estaja activo, ao clicar no fechar tela actual fecharia o estoque e as outras permaneceria. mas não gostaria de fazer uma linha para cada form, tipo assim:

se frmprocesso = activo entao
fecha
senao frmestoque = activo entao
fecha
senao frmprodutos = activo entao
fecha
fimse

porque posso futuramente criar mais forms precisava ser assim:

verifica qual form esta ativo
depois fecha-o
THAYSE 23/08/2010 11:14:06
#350975
E você não pode coloca botão de [Ô]fechar[Ô] nos form[ô]s e a pessoa escolhe qual form ela quer fechar?
Dai você coloca os forms como modais, e a pessoa só vai conseguir mecher e fechar a tela que ela abriu por ultimo
e consequentemente será o que ela estará mechendo. (atual)
JOHNHEY 23/08/2010 11:15:44
#350976
mas gostaria dessa função, se nao tiver como em ultimo caso faço.
JONATHANSTECKER 23/08/2010 13:36:00
#350993

Faça conforme modelo em anexo... Só adequar ao seu código.
JOHNHEY 24/08/2010 13:19:44
#351101
por favor jonathanstecker, fiz conforme o seu exemplo só alterando algumas coisas e dá o seguinte erro:

Base class [ô]Class1[ô] specified for class [ô]Usuario[ô] cannot be different from the base class [ô]System.Windows.Forms.Form[ô] of one of its other partial types. E:\PRGTIAL\TIAL\TIAL\Usuario.vb

no class coloquei igual

Public Class Class1
Inherits System.Windows.Forms.Form

Public Overridable Sub Fechar()

End Sub

Private Sub InitializeComponent()
Me.SuspendLayout()
[ô]
[ô]Class1
[ô]
Me.ClientSize = New System.Drawing.Size(292, 266)
Me.Name = [Ô]Class1[Ô]
Me.Text = [Ô]u[Ô]
Me.ResumeLayout(False)

End Sub
End Class

no menu do mdi tambem

Private Sub FecharTelaActualToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles FecharTelaActualToolStripMenuItem.Click
Dim child As Class1
child = CType(Me.ActiveMdiChild, Class1)
child.Fechar()
End Sub

só alterei no form
modelo como vc havia colocado

Inherits WindowsApplication1.Class1

Public Overrides Sub Fechar()
Me.Close()
End Sub

modelo como coloquei
Inherits TIAL.Class1

Public Overridable Sub Fechar()
Me.Close()
End Sub
JOHNHEY 25/08/2010 05:37:03
#351175
Já refiz tudo novamente e ainda não encontro nada
JONATHANSTECKER 19/03/2011 07:22:29
#368542
Nada ainda?
Tópico encerrado , respostas não são mais permitidas