Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net 仅检查指定的键是否已关闭_.net_Wpf - Fatal编程技术网

.net 仅检查指定的键是否已关闭

.net 仅检查指定的键是否已关闭,.net,wpf,.net,Wpf,我可以通过Keyboard.IsKeyDown方法检查键是否已按下。但是如何检查指定的键是唯一按下的键?取决于要检查的键,执行类似操作 if(Keyboard.IsKeyDown(Key.LeftCtrl)) //do something 或者如果你只想在按下一个键的情况下做某件事,试试下面的方法 if(!Keyboard.IsKeyDown(Key.LeftCtrl)) return; 如果按下的键不是所需的键,则会使其退出功能。也许您可以计算一下向下键与向上键的数量?如果计数器是

我可以通过
Keyboard.IsKeyDown
方法检查键是否已按下。但是如何检查指定的键是唯一按下的键?

取决于要检查的键,执行类似操作

if(Keyboard.IsKeyDown(Key.LeftCtrl))
    //do something

或者如果你只想在按下一个键的情况下做某件事,试试下面的方法

if(!Keyboard.IsKeyDown(Key.LeftCtrl)) return;

如果按下的键不是所需的键,则会使其退出功能。

也许您可以计算一下向下键与向上键的数量?如果计数器是1,并且它是您想要的键……

有一种方法可以获取当前键盘状态并计算出按下了哪些键,但它有点混乱,并且使用user32.dll。看看这个问题的答案


如果Key.LeftCtrl处于按下状态,并不意味着它是唯一一个处于按下状态的键,但如果按下了多个按钮,包括LeftCtrl,例如LeftCtrl和RightCtrl,则不会将您从功能中排除