查看完整版本: C++下如何屏蔽下ALT键

netice 2008-4-23 00:25

C++下如何屏蔽下ALT键

。。因为我设置了鼠标样式,但是按下ALT键的时候,好像系统自动调到菜单上把鼠标样式修改成了箭头
。。。偶想写方法把ALT键的切换菜单那功能去掉,,方法如下,,都不行

1.在返回消息中
  case WM_KEYDOWN:
   if(wParam==VK_MENU)
   {
        SetCursorType();//偶写的设置鼠标样式的方法
   }
   break;
  case WM_KEYUP:
   if(wParam==VK_MENU)
   {
        SetCursorType();
   }

结果不行(按下抬起都监督了,,,)

2.中在DXInput里进行键盘监控
if(gameInput->KeyDown(DIK_LMENU))//按左ALT键鼠标切换问题
{
  SetCursorType();
}
if(gameInput->KeyDown(DIK_RMENU))//按右ALT键鼠标切换问题
{
  SetCursorType();
}

if(gameInput->KeyUp(DIK_LMENU))//抬起左ALT键鼠标切换问题
{
  SetCursorType();
}
if(gameInput->KeyUp(DIK_RMENU))//抬起右ALT键鼠标切换问题
{
  SetCursorType();
}

也不行。。。。。。。。。。。

不过看到《魔兽世界》里是切换不掉鼠标样式的,
《完美世界》就不行,可以切换出去。。。(小地方对比了下):lol

请问有知道怎么把ALT屏蔽掉的方法没???

Nothing 2008-4-23 09:26

你说的ALT是系统标题栏消息吧。
那些消息是WM_NC*之类的消息,不是一般的消息。

关于屏蔽按键,需要使用系统勾子拦截WH_KEYBOARD_LL消息。

netice 2008-4-23 19:08

:L   使用系统勾子拦截???

这个不会也。。。。。

Nothing 2008-4-23 22:39

你查查WM_NC*系列消息,可能有用。

山外蛀虫 2008-8-17 19:52

SetWindowHookEx(),用这个函数
页: [1]
查看完整版本: C++下如何屏蔽下ALT键