天天看点

VC注册热键

(1)注册热键

<code>BOOL</code> <code>re = RegisterHotKey(</code><code>this</code><code>-&gt;m_hWnd, 0x2901, MOD_CONTROL, </code><code>'A'</code><code>);</code>

(2)热键消息映射

<code>BEGIN_MESSAGE_MAP(CtestThreadDlg, CDialogEx)</code>

<code>    </code><code>ON_WM_SYSCOMMAND()</code>

<code>    </code><code>ON_WM_PAINT()</code>

<code>    </code><code>ON_WM_QUERYDRAGICON()</code>

<code>...</code>

<code>    </code><code>ON_MESSAGE(WM_HOTKEY, OnHotKey)</code><code>//消息映射</code>

<code>    </code><code>ON_WM_DESTROY()</code>

<code>END_MESSAGE_MAP()</code>

(3).h文件中声明热键消息

<code>afx_msg </code><code>LRESULT</code> <code>OnHotKey(</code><code>WPARAM</code> <code>wparam, </code><code>LPARAM</code> <code>param);</code>

(4).cpp文件中编写消息函数

<code>LRESULT</code> <code>CtestThreadDlg::OnHotKey(</code><code>WPARAM</code> <code>wparam, </code><code>LPARAM</code> <code>lparam)</code>

<code>{</code>

<code>    </code><code>int</code> <code>a = wparam;</code><code>//0x2901</code>

<code>    </code><code>int</code> <code>b = lparam;</code>

<code>    </code><code>::MessageBox(</code><code>this</code><code>-&gt;GetSafeHwnd(), L</code><code>"ok"</code><code>, L</code><code>"tip"</code><code>,0);</code>

<code>    </code><code>return</code> <code>0;</code>

<code>}</code>

(5)注销热键

<code>void</code> <code>CtestThreadDlg::OnDestroy()</code>

<code>    </code><code>CDialogEx::OnDestroy();</code>

<code>    </code><code>UnregisterHotKey(</code><code>this</code><code>-&gt;m_hWnd, 0x2901);</code>

<code></code>

本文转自Chinayu201451CTO博客,原文链接:http://blog.51cto.com/9233403/1971394 ,如需转载请自行联系原作者

继续阅读