一、添加热键
主要通过RegisterHotKey这个函数来实现:
BOOL RegisterHotKey( HWND hWnd, int id, UINT fsModifiers, UINT vk );
该函数用于登记热键,
1>首先在程序的初始化中对热键进行登记,比如:
RegisterHotKey(m_hWnd, ID_HOT_DAJIA, MOD_CONTROL, 'J');
RegisterHotKey(m_hWnd, ID_HOT_NIMEN, MOD_CONTROL, 'N');
2>添加热键消息WM_HOTKEY的消息映射:
.h文件中:
afx_msg LRESULT OnHotKey(WPARAM wParam,LPARAM lParam);
.cpp文件中:
ON_MESSAGE(WM_HOTKEY, OnHotKey)
LRESULT CXXX::OnHotKey(WPARAM wParam,LPARAM lParam)
{
switch(wParam)
{
case ID_HOT_DAJIA:
AfxMessageBox(_T("da jia hao"));
break;
case ID_HOT_NIMEN:
AfxMessageBox(_T("ni men hao"));
break;
}
return 1;
}
3>结束工作,在程序退出时,注销注册的热键
void CXXX::OnDestroy()
{
CWnd::OnDestroy();
UnregisterHotKey(m_hWnd, ID_HOT_DAJIA);
UnregisterHotKey(m_hWnd, ID_HOT_NIMEN);
}
如此,便完成了对热键添加。
转载于:https://blog.51cto.com/qsjming/548371