2012-04-10

[MFC] 忽略esc與enter鍵,使其無法結束dialog

1.重載PreTranslateMessage事件
afx_msg BOOL PreTranslateMessage(MSG *pMsg);
2.在上述事件中,加入以下的code
BOOL CTestDlg::PreTranslateMessage(MSG* pMsg) 
{
   if(pMsg->message == WM_KEYDOWN)
   {
      switch(pMsg->wParam)
      {
         case VK_RETURN:
         case VK_ESCAPE:
              return true;
      }
   }
   return CDialog::PreTranslateMessage(pMsg);
}

如此即可避免程式執行中,因按下esc或enter而造成程式結束。

沒有留言:

張貼留言