问题描述
- C++窗口外获取键盘消息
-
如题,就像金山词霸一样,不管应用程序最小化还是位于其他窗口下面,我按一下F4
就能打开取词开关,再按一下关闭取词开关,这个用C++怎么实现呢?或者相关函数
解决方案
HOOK编程,用钩子来监听键盘按键
解决方案二:
hook windows API TExtOut等
解决方案三:
SetWindowsHookExW & CallNextHookEx
SetWindowsHookExW(WH_KEYBOARD_LL, (HOOKPROC)HookKeyBoard, g_hInstance, 0);
LRESULT CALLBACK HookKeyBoard( int nCode,WPARAM wParam,LPARAM lParam )
{
switch (nCode)
{
case HC_ACTION:
{
KBDLLHOOKSTRUCT* kHook = (KBDLLHOOKSTRUCT*)lParam;
if (wParam == WM_KEYDOWN)
{
if (kHook->vkCode == VK_F4)
{
//取词开关
}
}
}
break;
}
}
解决方案四:
键盘--字符消息
时间: 2024-11-16 01:44:17