***************按键问题*********** 当将鼠标置于对话框程序中的EDIT(或COMBO, LIST)控件上,如果按下Enter键,程序会跳出,如何屏蔽掉回车? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 映射IDOK;CXXDlg::OnOK(){..//CDialog::OnOK();} BOOL CMyDlg::PreTranslateMessage(MSG* pMsg) { if(pMsg->message==0x100 && pMsg->wParam==13)//屏住ENTER { return TRUE; } return CDialog::PreTranslateMessage(pMsg);} 不错,上面两种方法都可以达到目的,不过最好是用第一种,这才是体现出面向对象的方法,是MFC程序员所要求的。 映射IDOK;CXXDlg::OnOK(){..//CDialog::OnOK();}up 把回车键转换为TAB键,还不影响回车触发按钮事件,彻底解决。BOOL CRestore::PreTranslateMessage(MSG* pMsg) { // TODO: Add your specialized code here and/or call the base class if(pMsg->message == WM_KEYDOWN ) { CWnd * pWnd = CWnd::GetFocus(); switch (pMsg->wParam) { case VK_RETURN: if(!pWnd->IsKindOf(RUNTIME_CLASS(CButton))) pMsg->wParam = VK_TAB; else { pWnd->PostMessage(WM_LBUTTONDOWN,WM_COMMAND,0); pWnd->PostMessage(WM_LBUTTONUP,WM_COMMAND,0); return TRUE; } break; } } return CDialog::PreTranslateMessage(pMsg);} 如何创建进程调用winwap4.0.27 RC1并隐藏窗口? 问个,VC除了INI写配置文件外,还有什么合适的替代他 MFC定时器的问题... 消息钩子的问题 如何实现文件/文件夹的剪切 复制 粘贴功能 clistbox两个问题?? CListCtrl新插入的item是在前面还是在后面? 编辑框问题 改变IP地址不用重启就能用 怎么实现 提示给分 怎样把一个.txt文件转换成.xls文件 急:如何可以快速地将40万个点(x,y,z)中重复的顶点的删除 静态连接库问题,特急,100分马上送上
CXXDlg::OnOK()
{
..
//CDialog::OnOK();
}
{
if(pMsg->message==0x100 && pMsg->wParam==13)//屏住ENTER
{
return TRUE;
}
return CDialog::PreTranslateMessage(pMsg);
}
这才是体现出面向对象的方法,是MFC程序员所要求的。
CXXDlg::OnOK()
{
..
//CDialog::OnOK();
}up
{
// TODO: Add your specialized code here and/or call the base class
if(pMsg->message == WM_KEYDOWN )
{
CWnd * pWnd = CWnd::GetFocus();
switch (pMsg->wParam)
{
case VK_RETURN:
if(!pWnd->IsKindOf(RUNTIME_CLASS(CButton)))
pMsg->wParam = VK_TAB;
else
{
pWnd->PostMessage(WM_LBUTTONDOWN,WM_COMMAND,0);
pWnd->PostMessage(WM_LBUTTONUP,WM_COMMAND,0);
return TRUE;
}
break; }
}
return CDialog::PreTranslateMessage(pMsg);
}