WPF - 按下CTRL + SHIFT时如何捕获?

Posted

技术标签:

【中文标题】WPF - 按下CTRL + SHIFT时如何捕获?【英文标题】:WPF - How to capture when CTRL+SHIFT are pressed down? 【发布时间】:2010-10-23 16:21:05 【问题描述】:

当用户单击左 CTRL+ 左 SHIFT 时,我想让整个应用程序半透明(就像 VS2008 的智能感知下拉菜单一样)。如果我在 KeyUp 事件上编写代码,我可以捕获两个键都被按下,但是透明效果应该只在按下键时才有效。当它们被释放时,不透明度应该回到 100%。我想要的行为实际上是 KeyDown 事件,但是我无法捕获 KeyDown 上的两个键,可以吗?

谢谢

【问题讨论】:

【参考方案1】:

使用Keyboard 类的静态方法,特别是IsKeyDown() 来检查您感兴趣的键的状态。

KeyDown 上,您可以使用它来启用半透明效果,在KeyUp 上,您可以再次禁用效果。如果您正在使用它,您可以自己保存密钥的状态并对其进行操作。

【讨论】:

以上是关于WPF - 按下CTRL + SHIFT时如何捕获?的主要内容,如果未能解决你的问题,请参考以下文章

在我的 WPF 应用程序中捕获没有焦点的按键事件

如何确定启动应用程序时是不是按下了 SHIFT 或 CTRL 键

如何使用 WPF 和 .NET 3.5 注册全局热键以说出 CTRL+SHIFT+(LETTER)?

在pyqt中按下Ctrl + anyKey时如何在QLineEdit中打印“Ctrl + key”

如果只有一个键被按下,如何触发动作?

Ctrl + Shift +零的WPF KeyBinding Guesture不起作用