Partilhar via


CDialog::OnCancel

A estrutura chama esse método quando o usuário clica em Cancelar ou pressionar ESC chave em uma caixa de diálogo modal ou sem janela restrita.

virtual void OnCancel( );

Comentários

Ignore este método para executar ações (sistema autônomo a restauração de dados antigos) quando um usuário fecha a caixa de diálogo, clicando em Cancelar ou pressionar a tecla ESC.O padrão fecha uma caixa caixa de diálogo modal ao chamar EndDialog e causando DoModal retornar IDCANCEL.

Se você implementar o Cancelar botão em uma caixa de diálogo sem janela restrita, você deve substituir o OnCancel método e telefonar DestroyWindow dentro dela.Não chame o método da classe base, porque ele chama EndDialog, que irá tornar a caixa de diálogo invisível mas não destruí-lo.

Observação:

Você não pode substituir esse método quando você usa um CFileDialog objeto em um programa é compilado no Windows XP. Para obter mais informações sobre o CFileDialog, consulte Classe CFileDialog.

Exemplo

void CSimpleDlg::OnCancel()
{
   // TODO: Add extra cleanup here

   // Ensure that you reset all the values back to the
   // ones before modification. This handler is called
   // when the user doesn't want to save the changes.

   if (AfxMessageBox(_T("Are you sure you want to abort the changes?"), 
      MB_YESNO) == IDNO)
   {
      // Give the user a chance if he has unknowingly hit the
      // Cancel button. If he says No, return. Don't reset. If
      // Yes, go ahead and reset the values and close the dialog.
      return; 
   }

   m_nMyValue = m_nPrevValue;
   m_pMyString = NULL; 

   CDialog::OnCancel();
}

Requisitos

Header: afxwin.h

Consulte também

Referência

Classe CDialog

Gráfico de hierarquia

CDialog::OnOK

CDialog::EndDialog

Outros recursos

Membros CDialog