我们在程序中经常用到屏蔽某个按键的功能,屏蔽普通的键盘按键,只需在PretranslateMessage函数中捕获该按键消息。然后屏蔽Alt+F4, Ctrl+N等组合键时,需要在按下某一键时判断相应的组合键是否按下。
代码如下所示:
if ( pMsg->message == WM_KEYDOWN )
{
switch ( pMsg->wParam )
{
// 屏蔽 空格键
case VK_ESCAPE:
return FALSE;
// 屏蔽Ctrl+N键
case 78: // 'N'
if ( ::GetKeyState( VK_CONTROL ) < 0 )
{
return TRUE;
}
break;
default:
break;
}
}
代码如下所示:
if ( pMsg->message == WM_KEYDOWN )
{
switch ( pMsg->wParam )
{
// 屏蔽 空格键
case VK_ESCAPE:
return FALSE;
// 屏蔽Ctrl+N键
case 78: // 'N'
if ( ::GetKeyState( VK_CONTROL ) < 0 )
{
return TRUE;
}
break;
default:
break;
}
}