【发布时间】:2011-08-11 23:24:36
【问题描述】:
有什么方法可以让我仅使用 Mono C# 在 Mac 中获取键盘键状态(尤其是游戏)?
我正在寻找纯粹基于 C# 的解决方案,而不是任何其他 API。有这样的支持吗?
【问题讨论】:
有什么方法可以让我仅使用 Mono C# 在 Mac 中获取键盘键状态(尤其是游戏)?
我正在寻找纯粹基于 C# 的解决方案,而不是任何其他 API。有这样的支持吗?
【问题讨论】:
好吧,我发现自己也遇到了同样的情况,您要么必须使用 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;
希望这会有所帮助!
【讨论】: