【问题标题】:Listen keyboard shortcuts (c#)听键盘快捷键 (c#)
【发布时间】:2011-04-08 02:00:36
【问题描述】:

当有人使用 Ctrl+G 之类的键盘快捷键时,我如何运行方法?

该应用程序是一个 Windows 窗体应用程序,我只想在激活窗体时捕获它。

【问题讨论】:

  • 一些关于这是否是 Winforms 应用、Silverlight、WPF、控制台应用、ASP.NET 等的提示会有所帮助
  • 你想在任何应用程序中做全局键盘钩子并拦截快捷方式,还是只是你的特定应用程序?
  • 感谢您的提示。添加了更多细节:)

标签: c# winforms keyboard-shortcuts


【解决方案1】:

键盘快捷键通常被称为“命令键”。如果您想首先破解按键(在您的子控件之前),最好的地方是覆盖表单上的 ProcessCmdKey 方法。

【讨论】:

    【解决方案2】:

    查看表单上的 OnKeyPress 方法或表单的 KeyPress 事件。

    像这样覆盖 OnKeyPress...

    protected override void OnKeyPress(KeyPressEventArgs e) { ... }
    

    ...并查看 KeyPressEventArgs 以查看按下了哪个键以及是否使用 Ctrl 按下了它。

    这个 SO 答案显示了如何使用 KeyPress 事件...... Test for 'Ctrl' keydown in C#

    【讨论】:

    • 如果您的子控件获得键盘焦点,这将不起作用。
    猜你喜欢
    • 2014-05-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多