Ir ao topo

Tecnobyte

Logomarca da Tecnobyte
Contato por WhatsApp

WhatsApp

(69) 3421-6756

Contato por Telefone

(69) 3421-6756

(69) 3421-6757

Enviar mensagem

Enviar

mensagem

Contato por Facebook

Facebook

Vídeos

Vídeos

Atendimento de segunda a sexta, das 08h00 às 19h00 (horário de Brasília).

ÚLTIMOS DIAS PARA ECONOMIZAR!

Adquirindo uma licença anual do Tecnobyte SAC Lite, Tecnobyte SAC Plus ou Tecnobyte SAC Pro até 31/12/2024, você economiza 14,69% em relação ao novo valor mensal, pois evita o reajuste e ainda mantém os 10% de desconto da anuidade.

Tempo restante:

Delphi - Formulários

Como impedir que o formulário seja fechado com Alt+F4?

Este é um problema fácil de resolver. Vejamos porque.

Toda vez que um form recebe um comando para ser fechado, 
tal como Form1.Close ou mesmo uma mensagem WM_CLOSE, o evento
OnCloseQuery é disparado. Este evento passa um parâmetro por
referência normalmente chamado CanClose. Se alternarmos o valor
deste parâmetro para false o processo de fechar o formulário 
será cancelado.

Uma vez que queremos impedir que o form seja fechado com 
Alt+F4, temos que dar ao usuário outra forma de fechá-lo.
Neste exemplo vamos colocar um botão para esta tarefa.

Vamos aos passos:

1. Declare um campo (variável) na seção private do Form:
  
   private
     FPodeFechar: boolean;

2. No evento OnCreate do form coloque:

   FPodeFechar := false;

3. No evento OnCloseQuery do form coloque:

   CanClose := FPodeFechar;

4. Coloque um botão no form e no seu evento Click coloque:
   
   FPodeFechar := true;
   Close;   
  
Pronto! Execute e teste.

O conteúdo desta página pode ajudar alguém? Compartilhe!