在我的应用程序中,我检测何时按下某个键并查看修饰符是否为 shift 键,但 Keys 枚举器具有 Shift 和 ShiftKey。
似乎事件总是发送 Keys.Shift,但是否存在使用 Keys.ShiftKey 的情况?
(同样的问题适用于 Keys.Control 和 Keys.ControlKey)
感谢您的任何意见。
Keys.Shift
是修饰键(用于组合键),而与枚举Keys.ShiftKey
中的大多数其他键一样,是常规键代码。Keys
Keys.ShiftKey
指的是实际的 shift 键,而Keys.Shift
指的是 shift 修改本身。Keys.ShiftKey
可以像其他键代码一样用于检查是否按下,但您无法检查是否Keys.Shift
按下了,因为它代表状态而不是对象。我希望这是有道理的。
看这里:
http://msdn.microsoft.com/en-us/library/system.windows.forms.keys.aspx