小弟是一个才入行VC不久菜鸟,最近在建立Dialog对话框时不做任何修改直接去运行它时只要点击回车键那这个应用程序就马上结束了,怎么才能解决这个问题啊大侠?
解决方案 »
- MFC SHGetFileInfo获取文件图标问题
- 对话框类的ID是IDD_MYDLG,那对话框对象的ID是多少?
- 在vs2005下,自定义消息处理的问题
- 界面设计中怎样控制editbox 只能输入数字(包括负数)和小数点
- 请教一个关于Dll的问题
- 关于dll中函数地址的问题,高手进!
- CFileFind.FindFile总是一个文件都找不到。在线等。
- 大家好,如何在视图上得到最小的包含鼠标点击点的最小封闭区域?
- 为什么远程钩子不能用?
- 送分大补贴,发言超过5行的都有分!
- UpdateData()和Invalidate()有什么区别呀?
- 加了 NONAME 属性的 dll export 函数怎么不能通过外部显式调用了?
{
CWnd* pWnd==CWnd::FromHandle(pMsg->hwnd);
if((pWnd==this || (NULL!=pWnd && pWnd->GetParent()==this)) && pMsg->message==WM_KEYDOWN && pMsg->wParam==VK_ENTER)
return TRUE;
return CDialog::PreTranslateMessage(pMsg);
}
if( pMsg->message == WM_KEYDOWN && pMsg->wParam == VK_RETURN ) //判断是否按回车
return TRUE;
{
if(pMsg->message == WM_KEYDOWN)
{
if (pMsg->wParam == VK_ESCAPE) //Esc键不退出程序
{
return TRUE;
}
else if(pMsg->wParam == VK_RETURN)
{
if(pMsg->hwnd != GetDlgItem(IDC_BUTTON_QUESTION_ADD)->GetSafeHwnd() &&
pMsg->hwnd != GetDlgItem(IDC_BUTTON_QUESTION_MODIFY)->GetSafeHwnd() &&
pMsg->hwnd != GetDlgItem(IDC_BUTTON_QUESTION_REMOVE)->GetSafeHwnd() &&
pMsg->hwnd != GetDlgItem(IDC_BUTTON_RULE_ADD)->GetSafeHwnd() &&
pMsg->hwnd != GetDlgItem(IDC_BUTTON_RULE_MODIFY)->GetSafeHwnd() &&
pMsg->hwnd != GetDlgItem(IDC_BUTTON_RULE_REMOVE)->GetSafeHwnd() &&
pMsg->hwnd != GetDlgItem(IDC_BUTTON1)->GetSafeHwnd() &&
pMsg->hwnd != GetDlgItem(IDC_BUTTON2)->GetSafeHwnd())
{
return TRUE;
}
}
} return CDialog::PreTranslateMessage(pMsg);
}我还想让我的button处理回车消息。
{
CDialog::OnOk();
}
你所要做的就是把CDialog::OnOk()这条语句删除,原因是,你如果不重载OnOk函数,那么系统会根据这条语句自动调用父类的OnOk函数,这个函数就是定义了你一按钮就退出对话框的,明白了吗?
的说法