c# - 从 KeyData 中提取 KeyCode

标签 c# .net input key

如何从 System.Windows.Forms.Keys 中提取 KeyCode 标志(不带修饰符的 System.Windows.Forms.Keys 值)本身值(value)?

假设 Keys有标志Keys.Control , Keys.ShiftKeys.A .我想提取 Keys.A标志,但 Keys的标志(包括修饰符)是可变的。

最佳答案

Keys 枚举已经有一个掩码,它的名字不会让你感到惊讶:

  Keys code = keyData & Keys.KeyCode;

它的基础值为 0xffff,有效地屏蔽了修饰符状态位。类似的掩码值可用于隔离修饰符位,它是 Keys.Modifiers (0xffff0000)。

关于c# - 从 KeyData 中提取 KeyCode,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18811467/

相关文章:

c# - System.MissingMethodException : Method not found: 'Void Microsoft. AspNetCore.Identity.DataProtectorTokenProvider

c# - 使用 EWS 托管 API 2.2 获取原始发件人电子邮件地址

c# - 制作带圆角的 WPF 组合框

c - getc() 用于在 C 中传入输入和读取文件

python - 使用sys.stdin.read()时,为什么我无法从键盘输入?

c# - 类实现具有冲突方法签名的接口(interface)

c# - 如何在不手动指定编码的情况下在 C# 中获得字符串的一致字节表示?

c# - Excel:获取 Excel 中周围的命名范围

.net - 用户控件数据绑定(bind)的最佳实践 - 如何实现?

C:键盘多重输入