none
Botão fechar do formulário RRS feed

  • Pergunta

  • Olá boa noite. 

    Como faço para colocar uma mensagem no botão fechar do formulário?

    esse botão eu quero que apresente uma mensagem antes de sair e não fechar direto.

    sexta-feira, 17 de outubro de 2014 00:38

Respostas

  •   private void Form1_FormClosing(object sender, System.Windows.Forms.FormClosingEventArgs e)
            {
                if (MessageBox.Show("Deseja Encerrar a Aplicação?", "Sair", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes)
                {
                    System.Environment.Exit(0);
                }
                else
                {
                    e.Cancel = true;
                }
            }
    sexta-feira, 17 de outubro de 2014 01:00

Todas as Respostas

  • Boa noite Diézare,

    Você pode colocar essa mensagem no evento FormClosing, conforme imagem abaixo.

    Evento FormClosing

    A declaração do método fica desse jeito.

    private void Form1_FormClosing(object sender, FormClosingEventArgs e)
    {
         //AÇÃO DESEJADA...
    }

    Abs.


    Dicas de programação em .net, C# e SQL - http://smcode.com.br/blog.aspx


    • Editado Bruno Destro sexta-feira, 17 de outubro de 2014 00:59
    sexta-feira, 17 de outubro de 2014 00:59
  •   private void Form1_FormClosing(object sender, System.Windows.Forms.FormClosingEventArgs e)
            {
                if (MessageBox.Show("Deseja Encerrar a Aplicação?", "Sair", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes)
                {
                    System.Environment.Exit(0);
                }
                else
                {
                    e.Cancel = true;
                }
            }
    sexta-feira, 17 de outubro de 2014 01:00
  • Olá Diézare,

    Existem dois eventos no formulário que permite você realizar esse tipo de ação.

     private void Form1_FormClosed(object sender, FormClosedEventArgs e)
            {            
            }
    
            private void Form1_FormClosing(object sender, FormClosingEventArgs e)
            {
                if (MessageBox.Show("Deseja realmente fechar o formulário?", "Aviso", MessageBoxButtons.YesNo) == System.Windows.Forms.DialogResult.No)
                {
                    e.Cancel = true;
                }
            }

    O primeiro evento, é quando o formulário está sendo fechado.

    O segundo evento, é quando foi realizada a solicitação para fechar o formulário. Você pode inclusive cancelar a operação de solicitação caso esteja realizando algum processo em uma thread diferente por exemplo.

    Espero ter ajudado.


    Klayton Gomes MCP /MCTS/ MCPD Analist System / Software Developer

    sexta-feira, 17 de outubro de 2014 01:01