Учитывая wparam, как я могу определить, является ли это командой File-> Exit в приложении MFC? - PullRequest
0 голосов
/ 27 марта 2012

Есть ли определенная константа где-то в MFC, которая является стандартным определением для команды меню File-> Exit? Я пытаюсь определить, является ли команда той, но у меня есть только WPARAM для работы.

1 Ответ

1 голос
/ 27 марта 2012

APP_EXIT (57665 или 0xE141) отправляется по команде на карту сообщений, объявленную в appcore.cpp (или если вы переопределите ее в своем производном классе CWinApp);

BEGIN_MESSAGE_MAP(CWinApp, CCmdTarget)
  ON_COMMAND(ID_APP_EXIT, &CWinApp::OnAppExit)
END_MESSAGE_MAP()

В свою очередь, OnAppExit отправляет сообщение WM_CLOSE в главное окно в CWinApp:

void CWinApp::OnAppExit()
{
  // same as double-clicking on main window close box
  ASSERT(m_pMainWnd != NULL);
  m_pMainWnd->SendMessage(WM_CLOSE);
}

Вот так ваше приложение заканчивается в MFC, без WM_QUIT.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...