我按书上说的,在 PreCreateWindow()中调用了 LoadAccelerators(),然后重载 CWnd 的 TranslateMessage()如下:
Bool CwindowingClass::PreTranslateMessage(MSG*pMsg)
{
if(g_hAccel==NULL)
return FALSE;
return::PreTranslateAccelerator(m_hWnd,g_hAccel,pMsg);//这句出了问题,求大神指教啊
}
Bool CwindowingClass::PreTranslateMessage(MSG*pMsg)
{
if(g_hAccel==NULL)
return FALSE;
return::PreTranslateAccelerator(m_hWnd,g_hAccel,pMsg);//这句出了问题,求大神指教啊
}
解决方案 »
- VC6.0编辑环境下怎么设置行间距?
- gdi+通过一个graphicspath, 用图片填充 有锯齿
- bind (SOCKET s, const struct sockaddr FAR *addr, int namelen)
- VC 如何设置输出的文本背静为透明色
- 怎样让程序像极品飞车等游戏那样响应键盘按键?
- SetWindowsHookEx钩不到其他进程的东东(急)
- 请教: 为什么我的对话框总有一个按钮获得焦点?
- 关于MFC Clistctrl 中排序的问题
- 请教,c语言的有符号整数的取值范围是怎麽计算出来的,谢谢
- 急问高手关于Winsock编程
- 进程外COM组件如何调试
- MFC编译ACE出现dll链接不一致
{
// TODO: Add your specialized code here and/or call the base class
if (pMsg->message >= WM_KEYFIRST && pMsg->message <= WM_KEYLAST)
{ // Translate the message using accelerator table
ASSERT(m_hAccel);
return ::TranslateAccelerator(m_hWnd, m_hAccel, pMsg);
}
//
return CDialog::PreTranslateMessage(pMsg);
}
{
if (code >=0 && ghDlg && ghAccelTable)
{
if (::TranslateAccelerator(ghDlg, ghAccelTable, lpMsg))
return(TRUE);
} return CWinApp::ProcessMessageFilter(code, lpMsg);
}