如何响应按键消息?

aaask 2004-10-10 01:34:31
我用vc.net 建了个对话框程序,映射wm_char和wm_kaydown消息后无反映,在onchar和onkeydowm函数中加入断点后运行,程序未断开,onchar和onkeydowm函数根本就未被调用,特此请教高手
...全文
69 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
DentistryDoctor 2004-10-10
  • 打赏
  • 举报
回复
pMsg->hwnd==GetSafeHwnd() || CWnd::FronHandle(pMsg->hwnd)->GetParent()==this判断消息所属窗口必须是本窗口或本窗口的子窗口。
aaask 2004-10-10
  • 打赏
  • 举报
回复
请您再讲的详细点好吗?我是初学者,在加上以下代码后该做什么啊?怎么让他响应onkeydwon函数啊?
BOOL CYourDialog::PreTranslateMessage(MSG* pMsg)
{
if((pMsg->hwnd==GetSafeHwnd() || CWnd::FronHandle(pMsg->hwnd)->GetParent()==this) && pMsg->wParam==WM_KEYDOWN)
DentistryDoctor 2004-10-10
  • 打赏
  • 举报
回复
对话框中只要有子窗口(比如说按钮)就不能响应这些消息
方法是重载CDialog::PreTransateMessage
For example:

BOOL CYourDialog::PreTranslateMessage(MSG* pMsg)
{
if((pMsg->hwnd==GetSafeHwnd() || CWnd::FronHandle(pMsg->hwnd)->GetParent()==this) && pMsg->wParam==WM_KEYDOWN)
{
...
}
...
}

7,540

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 VC.NET
社区管理员
  • VC.NET社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧