关于钩子回调函数“KeyboardProc”的组合键的问题(讨论)

jxhnuaa 2004-01-11 03:30:50
在关于钩子的键盘回调函数中有三个参数:int code,WPARAM wParam,LPARAM lParam大家可以讨论一下各自对参数的理解。特别是关于组合键,比如要系统处理Ctrl+Alt+Del前让用户程序先处理,应如何判断?希望大家踊跃讨论
...全文
218 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
jxhnuaa 2004-01-11
  • 打赏
  • 举报
回复
组合键的问题如Ctrl+Alt+Del
if( (lParam & 0x20000000L) && GetKeyState(VK_DELETE)<0) && GetKeyState(VK_SHIFT) <0) && (lParam &0x40000000L))
{
处理Ctrl+Alt+Del;
}
但是这种方式对用户按Ctrl+Alt+Del的速度和节拍要求太高,响应不灵敏,原因在于GetKeyState函数在调用时才检查其所应检查的键是否被按下,而我们的代码是顺序执行的,所有上述问题,并且wParam的信息没有被用到,不知道有无其他的方法。这一点我个人认为VC没有C++Builder好,呵呵
jxhnuaa 2004-01-11
  • 打赏
  • 举报
回复
我自己先发表一下自己的看法:
int code是关于指示函数怎样处理该次键盘消息 wParam包含有键盘的非系统的虚拟键,比如VK_ADD键盘的+键,VK_F1键盘的F1键等等。lParam包含有许多特殊的信息,包括键被按下的次数,键是按下还是弹出,Alt键的状态,扫描码,扩展键指示。我的描述很简单,是自己的理解,希望大家多补充。
蒋晟 2004-01-11
  • 打赏
  • 举报
回复
http://search.csdn.net/expert/topic/50/5008/2002/10/21/1113085.htm

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧