16,472
社区成员
发帖
与我相关
我的任务
分享
BOOL CScriptEditerDlg::PreTranslateMessage(MSG* pMsg)
{
if(pMsg-> message == WM_KEYDOWN && pMsg-> wParam == VK_ESCAPE)
{
CStorage dlg;
if(dlg.DoModal()== IDCANCEL)//select NO
return TRUE;
}
return CDialog::PreTranslateMessage(pMsg);
}
}
BOOL CScriptEditerDlg::PreTranslateMessage(MSG* pMsg)
{
if(pMsg-> message == WM_KEYDOWN && pMsg-> wParam == VK_ESCAPE)
{
store = new CStorage();
store->DoModal();
if(store.bflage = FLASE)
{
CScriptEditerDlg::OnCancel();
}
return true;
}
return CDialog::PreTranslateMessage(pMsg);
}
//注意,你的CStorage Dialog中按钮YES和NO要处理bflage 标志位
//而且这个方法仅仅对非CWnd变量有效
if(pMsg-> message == WM_KEYDOWN && pMsg-> wParam == VK_ESCAPE)
{
CStorage store;
if(IDOK != store.DoModal())
{
PostMessage(WM_CLOSE);
}
return true;
}
void CScriptEditerDlg::OnCancel()
{
if (MessageBox(_T("退出"), _T("退出"), MB_YESNO) == IDYES)
CDialog::OnCancel();
}