我有一个用C ++编写并在Windows上运行的程序。我允许用户键入绑定CAPSLOCK键,这样如果每次按下它们,它们也不会切换它们的CAPSLOCK状态会很好。
我发现没有办法去捕捉" CAPSLOCK消息,以防止它被Windows注册。好像当我收到WM_KEYDOWN消息时,键盘上的指示灯已经切换。
我找到了这个suggested code:
keybd_event( VK_CAPITAL, 0x3a, KEYEVENTF_EXTENDEDKEY, 0 );
keybd_event( VK_CAPITAL, 0x3a, KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP, 0 );
但是,它不起作用。它有点导致指示灯闪烁,并且似乎根本不会影响CAPSLOCK状态。