我想在按下某个键时进行 bool 事件切换。具体来说,是“s”键。我已经指出了GetKeyState()函数,该函数应该在Win32 API下工作。我知道字母's'的ASCII码是115,所以我的代码如下:

if (GetKeyState(115) == 1)
{
<EVENT>
}

但是,这不起作用。为什么?这是MSDN引用:http://msdn.microsoft.com/en-us/library/ms646301%28v=vs.85%29.aspx ...“如果低位为1,则切换键”

最佳答案

据我了解,您需要执行以下操作:

if( GetKeyState(115) & 0x8000 )
{
    <EVENT>
}

最高位指示是否按下了键。最下面的内容告诉您是否已切换键(例如,大写锁定是否已打开)。

关于c++ - 使用GetKeyState(),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6331868/

10-13 04:32