C#:从 KeyEventArgs 的 KeyData 获取正确的按键

2024-02-09

I am trapping a KeyDown event and I need to be able to check whether the current keys pressed down are : Ctrl + Shift + M ?


我知道我需要使用e.KeyData来自KeyEventArgs, the Keys枚举以及带有枚举标志和位的东西,但我不确定如何检查组合。


您需要使用修饰符 http://msdn.microsoft.com/en-us/library/system.windows.forms.keyeventargs.modifiers.aspxKeyEventArgs 类的属性。

就像是:

//asumming e is of type KeyEventArgs (such as it is 
// on a KeyDown event handler
// ..
bool ctrlShiftM; //will be true if the combination Ctrl + Shift + M is pressed, false otherwise

ctrlShiftM = ((e.KeyCode == Keys.M) &&               // test for M pressed
              ((e.Modifiers & Keys.Shift) != 0) &&   // test for Shift modifier
              ((e.Modifiers & Keys.Control) != 0));  // test for Ctrl modifier
if (ctrlShiftM == true)
{
    Console.WriteLine("[Ctrl] + [Shift] + M was pressed");
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C#:从 KeyEventArgs 的 KeyData 获取正确的按键 的相关文章

随机推荐

  • 同时运行 React 和 Node。

    我有一个我认为不太独特的用例 但我遇到了挑战 我的应用程序是用express EJS编写的 在端口35上运行 我想包括react 所以我正在遵循教程 并在我现有的应用程序中编写这个应用程序 并在另一个端口上运行 当两个应用程序位于不同端口时
  • c++filt 源代码在哪里?

    有谁知道 c filt 源代码的链接 我想在我的代码中将 c filt 作为库调用 在 Linux 上你可以使用 usr include demangle h附带binutils dev包裹 您必须链接到libiberty from bin
  • Ansible 检查字典列表中是否存在键/值对

    我试图检查 Ansible 的字典列表中是否存在某个键 值对 我发现了这个问题 但是我不确定Python和ansible的语法是否不同 我从未在ansible中见过if语句 检查字典列表中是否已存在值 https stackoverflow
  • 读取和写入 NSMutableDictionary 到 plist 文件

    我正在努力拯救NSMutableDictionary in applicationDidEnterBackground of AppDelegate m一个到一个plist文件 保存后 我立即尝试检查该文件是否存在并读回 但找不到该文件 N
  • git request-pull:如何在命令行上创建(github)拉取请求?

    我克隆了一个项目 并将一个仅包含重命名的自述文件的分支推送到自述文件中 我正在尝试在命令行上创建拉取请求 只是为了从这里尝试 PR 而不是网站 git request pull origin master origin readme rea
  • 在 Ruby 中将 12 小时时间转换为 24 小时格式

    如何将 11am 和 10pm 转换为 11 00 和 22 00 有没有一种使用日期和时间类的简单方法 我首先会解析字符串Time strptime然后输出它Time strftime 这也确保了对您的原始格式的严格检查 require
  • python 绘制填充颜色的饼图

    我正在尝试绘制一个填充颜色的饼形 我尝试以不同的方式做到这一点 这是代码 ball pygame draw circle self screen self pink self pos self r 0 pygame gfxdraw pie
  • Hexdump反向命令

    The hexdump https www man7 org linux man pages man1 hexdump 1 html命令将任何文件转换为十六进制值 但是 如果我有十六进制值并且我想反转该过程 这可能吗 有一个类似的工具叫做x
  • Json <-> 与 GWT 一起使用的 Java 序列化 [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • Delphi 中的dynamic_cast 相当于什么?

    在Delphi中 相当于C 的什么dynamic cast reinterpret cast and static cast运算符 尤其是在对象上使用时 重新解释 cast 大多数时候 在 Delphi 中 演员表是reinterpret
  • 如何让 Eclipse 显示类的整个 javadoc

    eclipse可以显示整个javadoc吗 即 当我突出显示对象引用时 所有方法 及其描述 例如 如果我做系统 它会向我显示 java lang System System 类包含几个有用的类字段和方法 它 无法实例化 System 类提供
  • git 可以用于非文本文档(例如 word doc 或 xls 等)的版本控制吗

    我最近一直在学习 GIT 版本控制系统 它似乎对于纯文本文档非常有效 因为您可以添加一行 返回并分叉它 修改文档并删除刚刚添加的行 我主要用 Excel 编程并用 Word 编写文档 GIT 可以用来管理这些文件的版本 显然不是文件内部的内
  • Angular 7+ 上的动态导入

    我正在尝试构建包含一些具有动态导入的组件的项目 例如 import Directive Input ElementRef from angular core Directive selector saKnob export class Kn
  • 字寻址和字节寻址之间的区别

    有人可以解释一下有什么区别吗Word and Byte可寻址 它与内存大小等有何关系 A byte is a 记忆单元 https en wikiversity org wiki Memory Unit for storage A 存储芯片
  • 添加到观看与添加到快速观看

    添加到观看和添加到快速观看之间有什么区别吗 添加到监视 将变量添加到监视窗口 以便您可以在单步执行代码时看到其值的变化 QuickWatch 会弹出一个短暂的对话框 显示该值 而不会在任何地方永久添加它 当您关闭该对话框时 您将无法再看到该
  • 如何使用 PAT 和命令行 git 或 sourcetree 克隆 azure dev ops git 存储库?

    好的 我们的组织在 azure devops 存储库中拥有代码 我一直在尝试通过 Mac 上的 git 命令行 Mac 上的 SourceTree 和 Windows 上的 SourceTree 来克隆它 但没有成功 我在 azure gi
  • 在大写字母前插入空格的Pythonic方法

    我有一个文件 我正在通过 python 脚本更改其格式 我在这个文件中有几个驼峰式字符串 我只想在大写字母之前插入一个空格 所以 WordWordWord 变成 Word Word Word 我有限的正则表达式经验对我来说已经停滞了 有人能
  • 如何在内容脚本和插件之间共享代码?

    我正在为 Firefox 4 编写一个扩展 我在名为的文件中有一些代码utils js我想从两个插件中调用它main js并从page mod的内容脚本 是否可以从两者引用同一个utils js 如果是这样 怎么办 编辑 更好的解决方案是允
  • 将表格列压缩至最小可能宽度

    在我的网站上 我有很多 table 其中有一个特定的列 我们希望将其压缩到尽可能小的空间 而不将其文本换行 其他兄弟单元自动共享其余空间 我正在使用以下技巧 它适用于除 IE7 之外的所有浏览器 此时我其实只关心IE7 table widt
  • C#:从 KeyEventArgs 的 KeyData 获取正确的按键

    I am trapping a KeyDown event and I need to be able to check whether the current keys pressed down are Ctrl Shift M 我知道我