Ciclo de vida das Janelas
Aqui está uma pequena explicação sobre a morte e o nascimento de uma janela.
-
Existem dois tipos de janelas: janelas reais de nível superior e Janelas incorporadas (como as incorporadas dentro de um TabStrip no IDE).
-
Uma janela pode ser persistente ou não. A janela não persistente é destruída quando você a fecha. Uma janela persistente apenas é ocultada.
-
Uma janela pode ser aberta no modal (bloqueio) e modo não-modal (sem bloquear). O modo modal é implementado utilizando um ciclo de eventos local. Uma janela incorporada aberta no modo modal é feita temporariamente de nível superior.
-
A primeira vez que uma janela é exibida, um evento Open é levantado.
-
Uma janela pode ser fechada, chamando o método Close ou clicando no botão Fechar do gerenciador de janelas se a janela é uma janela de nível superior.
-
Quando a janela é fechada, o evento Close é gerado. Se este evento não for parado, então a janela se torna oculta. Se a janela não for persistente, ela é destruída também. Se a janela foi aberta no modo modal, então é chamado o ciclo de eventos local utilizado para a implementação do modo modal.
-
Quando uma janela é fechada, ela pode ser aberta novamente, e o evento Open será levantado outra vez.
-
O argumento inteiro do método Close é devolvido pelo método ShowModal.
-
Se você chamar Close durante o evento Close, o método não faz nada.
-
Se você chamar Close durante o evento Open, a janela não será aberta.
-
Se você chamar Show ou ShowModal enquanto a janela está sendo mostrado (Show), o método não faz nada.