Шаг 615 - CDialog::OnOK.

Автор Каев А. Г.
virtual void OnOK( );

Замечания
Вызывается когда пользователь нажимает кнопку OK (кнопка с IDOK).
Перегрузите эту функцию, чтобы выполнить действие кнопки OK. Если диалоговое окно включает автоматическую проверку правильности данных и обмен, заданная по умолчанию реализация этой функции проверяет правильность данных диалогового окна и модифицирует соответствующие переменные в Вашей прикладной программе.
Если Вы выполняете кнопку OK в немодальном диалоговом окне, Вы должны перегрузить OnOK функцию и вызывать DestroyWindow изнутри этого. Не вызывайте функцию базового класса, потому что это вызывает EndDialog, который делает диалоговое окно невидимым, но не уничтожает его.

Пример

// MyDialog.cpp
#include "MyDialog.h"

void CMyDialog::OnOK() 
{
   // Добавьте проверку правильности  здесь
   // Гарантировать, что ваш UI получил необходимый ввод 
   // от пользователя перед закрытием диалога. 
   // Значение по умолчанию OnOK закроет это.

   if ( m_nMyValue == 0 ) // Является специфическое поле все еще пустым ?
   {
      AfxMessageBox("Please enter a value for MyValue");
      return; // Сообщить пользователю, что он не может закрывать диалог
              // необходим ввод необходимых значений  
   }

   CDialog::OnOK(); // Это закроет диалог, и DoModal возвратится.
}

Hosted by uCoz