当前位置:  开发笔记 > 编程语言 > 正文

如何扩展标记的枚举

如何解决《如何扩展标记的枚举》经验,为你挑选了1个好方法。

我有一个像这样的组合键

Keys key=Keys.Control | Keys.Shift | Keys.D ...

我不知道如何将键变量扩展为分离的Keys值.也许是这样的

foreach(Keys k in key)
{
   MessageBox.Show(k.ToString());
}

这对我来说似乎很愚蠢.这该怎么做?



1> configurator..:

请参阅密钥的定义.除以下内容外,所有值均作为正常的互斥值:

//     The bitmask to extract a key code from a key value.
KeyCode = 65535,
//     The SHIFT modifier key.
Shift = 65536,
//     The CTRL modifier key.
Control = 131072,
//     The ALT modifier key.
Alt = 262144,

所以你需要检查的是alt,control和shift.要获得未移位的密钥,请使用

Keys value = key & Keys.KeyCode

要确定是否按下了shift,alt或control

bool altValue = key & Keys.Alt
bool controlValue = key & Keys.Control
bool shiftValue = key & Keys.Shift

就是这样

推荐阅读
殉情放开那只小兔子
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有