Obrigado André, resolveu o problema. Mas o que achei estranho é que eu já tinha 
tentado antes com o Close diretamente, mas continou dando erro, sabe-se lá pq. 
Mas troquei novamente e aí resolveu.

De qualquer forma, obrigado.

Sds,
Ricardo.

André - Gmail <[EMAIL PROTECTED]> escreveu:                                  use
 
 if Key = 27 then
      Close;
 
 ao invés de
 
 if Key = 27 then
      frmEVENTOS_SERVICO.OnClose;
 
 ----- Original Message ----- 
 From: "Ricardo César Cardoso" <[EMAIL PROTECTED]>
 To: <delphi-br@yahoogrupos.com.br>
 Sent: Friday, May 04, 2007 9:17 AM
 Subject: [delphi-br] Fechar Form usando tecla ESC
 
 Bom dia amigos da lista!
 
 Tenho a seguinte dúvida: num form da minha aplicação, gostaria que fosse 
 possível usar a tecla [ESC] para sair da tela. Mas quando pressiono a tecla 
 [ESC] para sair da tela, o sistema dá uma violação de acesso. Coloquei 
 Breakpoints para ver se as rotinas Close e CloseQuery eram chamadas, mas 
 nenhuma delas é chamada.
 
 Vejam abaixo o código usado:
 
 Procedure TfrmEVENTOS_SERVICO.FormCloseQuery(Sender: TObject;
   var CanClose: Boolean);
  Begin
    dmEVENTOS_SERVICO.Free;
  End;
 
 Procedure TfrmEVENTOS_SERVICO.FormClose(Sender: TObject;
   var Action: TCloseAction);
  Begin
    with frmPRINCIPAL do
      MainMenu1.Items.Items[2].Remove(mJanelas.Find('TAREFAS'));
 
 Action := caFree;
    frmEVENTOS_SERVICO := nil;
  End;
 
 Procedure TfrmEVENTOS_SERVICO.FormKeyDown(Sender: TObject; var Key: Word;
   Shift: TShiftState);
  Begin
    if Key = 27 then
      frmEVENTOS_SERVICO.OnClose;
  End;
 
 Se alguém tiver alguma idéia de como resolver este problema, fico 
 agradecido.
 
 Saudações,
 Ricardo.
 
 __________________________________________________
 Fale com seus amigos  de graça com o novo Yahoo! Messenger
 http://br.messenger.yahoo.com/
 
 [As partes desta mensagem que não continham texto foram removidas]
 
 -





 __________________________________________________
Fale com seus amigos  de graça com o novo Yahoo! Messenger 
http://br.messenger.yahoo.com/ 

[As partes desta mensagem que não continham texto foram removidas]

Responder a