有没有办法只使用Mono C#在Mac上获得键盘按键状态(尤其是游戏)?
我正在寻找纯粹的基于C#的解决方案,而不是任何其他API。有这样的支持吗?
答案 0 :(得分:3)
好吧,我发现自己处于相同的情况,你要么必须使用System.Windows.Forms下的Control类,要么按照this solution的说明进行操作,并使其适应C#世界
我对大写密钥特别感兴趣,所以我做了:
[DllImport("/System/Library/Frameworks/ApplicationServices.framework/ApplicationServices")]
public static extern long CGEventSourceFlagsState(int keyCode);
bool CapsLock = (CGEventSourceFlagsState(1) & 0x00010000) != 0;
希望这有帮助!