标题
[mfc][典型]对话框在按下回车时自动消失/edit 控件无法得到回车键
clq
浏览(0) +
2008-04-24 13:54:11 发表
编辑
关键字:
[mfc][典型]对话框在按下回车时自动消失/edit 控件无法得到回车键 这两个问题通常是同一个问题,据说是 CDialog 会自动在 vk_return 和 vk_esc 时退出。其实只要重载 PreTranslateMessage 函数/事件就能解决了,方法如下: BOOL CMfc_dialog1Dlg::PreTranslateMessage(MSG* pMsg) { if(pMsg->message==WM_KEYDOWN && pMsg->wParam==VK_RETURN) { //如果在EDIT控件里输入回车,则执行你的动作 } // TODO: Add your specialized code here and/or call the base class return CDialog::PreTranslateMessage(pMsg); }
clq
最简单的办法是,先保留 On Cancel 按钮, 如果已经删除了可以从别的地方复制过来,然后双击它们产生 void ..::OnOK() void ..::OnCancel() 事件代码,然后将默认生成的 CDialog::OnCancel(); CDialog::OnOK(); 去掉即可. -------------------------------------------------- 这样做之后还有一个问题,就是关闭按钮不起作用了,办法是响应 WM_CLOSE 事件 void ..::OnClose() { // TODO: Add your message handler code here and/or call default CDialog::OnClose(); CDialog::OnCancel();//禁止了 OnCancel 就要加这个 }
NEWBT官方QQ群1: 276678893
可求档连环画,漫画;询问文本处理大师等软件使用技巧;求档softhub软件下载及使用技巧.
但不可"开车",严禁国家敏感话题,不可求档涉及版权的文档软件.
验证问题说明申请入群原因即可.