Freigeben über


CDialog::OnOK

Aufgerufen, wenn der Benutzer auf die Schaltfläche klickt OK (Schaltfläche mit einer ID von IDOK).

virtual void OnOK( );

Hinweise

Überschreiben Sie diese Methode, um Aktionen auszuführen, wenn die Schaltfläche OK aktiviert wird.Wenn das Dialogfeld automatische Datenvalidierung und Austauschen enthält, überprüft die Standardimplementierung dieser Methode die Dialogfelddaten und aktualisiert die entsprechenden Variablen der Anwendung.

Wenn Sie die Schaltfläche OK in einem nicht modalen Dialogfeld implementieren, müssen Sie die OnOK-Methode überschreiben und DestroyWindow darin aufrufen.Rufen Sie nicht die Basisklassenmethode auf, da sie EndDialog aufruft, die das Dialogfeld nicht sichtbar erstellt, jedoch nicht zerstört.

HinweisHinweis

Sie können diese Methode nicht überschreiben, wenn Sie ein CFileDialog-Objekt in einem Programm verwenden, das unter Windows XP kompiliert wird.Weitere Informationen zur CFileDialog-Komponente finden Sie unter CFileDialog-Klasse.

Beispiel

void CSimpleDlg::OnOK()
{
   // TODO: Add extra validation here

   // Ensure that your UI got the necessary input 
   // from the user before closing the dialog. The 
   // default OnOK will close this.
   if (m_nMyValue == 0) // Is a particular field still empty?
   {    
      // Inform the user that he can't close the dialog without
      // entering the necessary values and don't close the 
      // dialog.
      AfxMessageBox(_T("Please enter a value for MyValue"));
      return; 
   }

   CDialog::OnOK(); // This will close the dialog and DoModal will return.
}

Anforderungen

Header: afxwin.h

Siehe auch

Referenz

CDialog-Klasse

Hierarchien-Diagramm

CDialog::OnCancel

CDialog::EndDialog