用RegisterHotKey(hWnd,id,fsModifiers,vk)注册一个快捷键之后,如何让程序响应这个快捷键?
vc++用RegisterHotKey(hWnd,id,fsModifiers,vk)注册一个快捷键之后,如何让程序响应这个快捷键?
问题点数:20、回复次数:6Top
1 楼csdnflysnow()回复于 2001-10-27 18:05:57 得分 0
在注册的窗口处理 WM_HOTKEY的消息Top
2 楼cub(cub)回复于 2001-10-27 18:11:40 得分 0
但是在MFC ClassWizard中没有WM_HOTKEY消息呀
Top
3 楼lownr(廖宇雷)回复于 2001-10-27 18:21:17 得分 0
手工添加就可以了。
在消息映射中添加:
ON_MESSAGE(memberFxn)
添加成员函数:
afx_msg LRESULT memberFxn(WPARAM, LPARAM);Top
4 楼cub(cub)回复于 2001-10-27 18:55:52 得分 0
能说详细点吗?
我没添过,添了几次都没有成功Top
5 楼Julienjut(秋水)回复于 2001-10-27 19:29:49 得分 20
自己添加 WM_HOTKEY 的处理函数
//.h
afx_msg void OnHotKey(LPARAM lParam,WPARAM wParam);
ON_MESSAGE(WM_HOTKEY,OnHotKey)
void CKillAnyDlg::OnHotKey(LPARAM lParam,WPARAM wParam)
{
UINT fuModifiers = (UINT) LOWORD(lParam);
if (fuModifiers==HOTKEY_LK||fuModifiers==HOTKEY_UK)
//你定义的热键
{
//你的处理
}
}
Top
6 楼cub(cub)回复于 2001-10-28 10:52:43 得分 0
HOTKEY_LK¦¦fuModifiers==HOTKEY_UK
//你定义的热键
怎么写呀?举个例子,比如Ctrl+a.Top




