一、添加热键

主要通过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);
}

如此,便完成了对热键添加。