Destaques do Blog...

Burlar Protetores de Link Teste de texto

2 de janeiro de 2012

Dica Delphi 7 - Impedindo Formulário de fechar sem salvar.

Procurei muito na net por uma forma simples de se impedir que um formulário feche sem que algo tenha sido feito. Depois de pensar um pouco, notei que pode ser feito da seguinte forma (com ajuda de alguns textos da internet, claro...)

No evento OnClose do seu formulário, insira o código:

If (MessageDlg(<texto que vai aparecer no dlg>,<tipo da dlg>,<tipo dos botões>, 0) = <botão de resposta>)
  then begin
     Action := caFree;
  end
  else begin
     Action := caNone;
  end;


Existem 5 tipos de Dialogs:

  • mtWarning: Janela de Atenção;
  • mtError: Janela de Erro;
  • mtInformation: Janela de Informação;
  • mtConfirmation: Janela de Confirmação;
  • mtCustom: Janela Customizada.
Existem 11 tipos de Botões:
  • mbYes: Sim;
  • mbNo: Não;
  • mbOk: Ok;
  • mbCancel: Cancelar;
  • mbAbort: Abortar;
  • mbRetry: Tentar novamente;
  • mbIgnore: Ignorar;
  • mbAll: Todas as opções;
  • mbYesToAll: Sim para todos;
  • mbNoToAll: Não para Todos;
  • mbHelp: Ajuda;
Os botões de resposta são basicamente os mesmos, com a diferença de que ao invés de mb é mr. 

No caso do Action, tem 4 opções:
  • caFree: Fecha a janela (free porque tira ela da memória);
  • caHide: Oculta a janela;
  • caMinimize: Minimiza a janela;
  • caNone: Não faz nada.

Espero ter ajudado galera.

Logo logo estaremos num servidor dedicado \o/

Até mais.