【发布时间】:2019-03-07 17:15:37
【问题描述】:
我正在尝试检查 CAPS LOCK 是否打开。 我已经看到了以下行,我想知道为什么需要带有 0xFFFF 的 AND,因为带有 0xFFFF 的 AND 将返回完全相同的数字。我已经读过here,为了检查 CAPS LOCK 是否被切换,您需要检查低位,因此它应该是 AND 与 1。那么,为什么是 0xFFFF?
bool CapsLock = (((ushort)GetKeyState(0x14)) & 0xffff) != 0;
谢谢!
【问题讨论】:
-
如果
GetKeyState实际上是GetKeyState,那么0xffff完全没有意义。如果它是返回int的自定义包装器,它可能有目的。