首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

这是表示什么意思 Kes.Up|Keys.Shift?该如何处理

2012-02-06 
这是表示什么意思 Kes.Up|Keys.Shift?看一段代码,发现在在KeyDown事件中有如下代码:caseKeys.Up:...case(K

这是表示什么意思 Kes.Up|Keys.Shift?
看一段代码,   发现在在KeyDown事件中有如下代码:


case   Keys.Up:
...
case   (Keys.Up   |   Keys.Shift):
...

这个(Keys.Up   |   Keys.Shift)是表示什么键?   反正不是表示Shift和Up一块按下.


[解决办法]
Keys.Up是一个表示方法,如:00001
Keys.Shift 是一个表示方法 如:00010

| 表示两者相与 结果就是 00011,表示两者同时按下
[解决办法]
像control, shift这种键的键值在Keys枚举中的值都是大于0xffff的, 而普通键的键值都小于0xffff, 这样两者的或操作就表示两键同按

switch (e.KeyData)
{
case Keys.Up:
MessageBox.Show( "No Shift ");
break;
case Keys.Up | Keys.Shift:
MessageBox.Show( "Shift ");
break;
}
}

热点排行