VB .NET - Exemplos de fechamento de formulários


 Hoje temos um projeto que mostra 11 exemplos de fechamento de formulários usando a linguagem VB .NET em um projeto Windows Forms com efeitos especiais.

No VB .NET podemos usar o evento FormClosing e a propriedade CloseReason para saber porque o usuário esta fechando o formulário.

A propriedade CloseReason retorna vários valores conforme o motivo pelo qual o formulário esta sendo fechado como fazia o VB6 com o QueryUnload.

Vejamos então quais os valores da enumeração CloseReason :
Enumeração Descrição do motivo do fechamento do formulário para cada valor
ApplicationExitCall O fechamento esta sendo feito via chamada a Application.Exit()
MdiFormClosing O formulário MDI do formulário esta sendo fechado
None causas desconhecidas
FormOwnerClosing O formulário proprietário esta sendo fechado
TaskManagerClosing O administrador de tarefas do Windows esta fechando o formulário
UserClosing O fechamento esta sendo feito via Close ou clicando no X do menu de controle
WindowsShutDown O Windows esta sendo encerrado

Nota:

Apenas para recordar: O evento Closing ocorre quando o formulário esta sendo fechado. Quando isto ocorre todos os recursos criados com o objeto são liberados e o formulário é liberado. Se cancelarmos este evento o formulário permanece aberto. Desta forma para cancelar o fechamento de um formulário no VB.NET definimos a propriedade Cancel do evento CancelEventArgs passado para o tratador de eventos como igual a True.

Lembrando também que os eventos Form.Closed e Form.Closing não são disparados quando o método Application.Exit é chamado para encerrar a aplicação.

Abaixo o código usa o evento FormClosing para obter qual o motivo para o fechamento do formulário :

Public Class Form1

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Me.Close()
    End Sub
    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        Application.Exit()
    End Sub
    Private Sub Form1_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) 
Handles Me.FormClosing
        MessageBox.Show(e.CloseReason.ToString)
        Select Case e.CloseReason
            Case CloseReason.ApplicationExitCall
            Case CloseReason.FormOwnerClosing
            Case CloseReason.MdiFormClosing
            Case CloseReason.None
            Case CloseReason.TaskManagerClosing
            Case CloseReason.UserClosing
            Case CloseReason.WindowsShutDown
        End Select
    End Sub
End Class

 

A seguir temos um projeto exemplo que mostra 11 diferentes formas de fechar um formulário usando VB .NET e alguns efeitos especiais.

Recursos usados :

Fechando formulários

Abra o VS Express 2013 for Windows Desktop e clique em New Project;

A seguir selecione a linguagem Visual Basic e o template Windows Forms Application;

Informe o nome FecharFormulario e clique no botão OK;

A seguir selecione o  formulário padrão form1.vb e partir da ToolBox, os seguintes controles:

Basta executar o projeto, e, clicando em cada um dos botões, verificar a forma de fechamento e o efeito aplicado.

Pegue o projeto completo aqui:  Fechar_App.zip

O que era desde o princípio, o que ouvimos, o que vimos com os nossos olhos, o que temos contemplado, e as nossas mãos tocaram da Palavra da vida
(Porque a vida foi manifestada, e nós a vimos, e testificamos dela, e vos anunciamos a vida eterna, que estava com o Pai, e nos foi manifestada);
O que vimos e ouvimos, isso vos anunciamos, para que também tenhais comunhão conosco; e a nossa comunhão é com o Pai, e com seu Filho Jesus Cristo.
1 João 1:1-3

Veja os Destaques e novidades do SUPER DVD Visual Basic (sempre atualizado) : clique e confira !

Quer migrar para o VB .NET ?

Quer aprender C# ??

Quer aprender os conceitos da Programação Orientada a objetos ?

Quer aprender o gerar relatórios com o ReportViewer no VS 2013 ?

  Gostou ?   Compartilhe no Facebook   Compartilhe no Twitter

Referências:


José Carlos Macoratti