KeyDown 事件未触发,KeyPreview 设置为 true

2023-12-09

我正在构建一个小型表单应用程序,我刚刚启动它。 但我有这个问题: 如果我将 Control 放入表单,则 KeyDown 事件不会触发。我知道 KeyPreview 属性,并将其设置为 true。但这没有帮助...:(我也尝试设置 专注于主要形式,也没有成功。

有什么想法吗?

Edit:

public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
        KeyDown += new KeyEventHandler(Form1_KeyDown);
        this.KeyPreview = true;
    }

    void Form1_KeyDown(object sender, KeyEventArgs e)
    {
        switch (e.KeyCode)
        {
            case Keys.Left: MessageBox.Show("Left");
                break;
            case Keys.Right: MessageBox.Show("Right");
                break;
        }
    }
}

我已经评论了我的解决方案,但我也将其作为答案发布,因此可以轻松找到。

protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
{
    switch (keyData)
    {
        case Keys.Left:
            // left arrow key pressed
            return true;
        case Keys.Right:
            // right arrow key pressed
            return true;
        case Keys.Up:
            // up arrow key pressed
            return true;
        case Keys.Down:
            // down arrow key pressed
            return true;
    }

    return base.ProcessCmdKey(ref msg, keyData);
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

KeyDown 事件未触发,KeyPreview 设置为 true 的相关文章

随机推荐

  • 在满足条件后使用 mufa 停止 React 组件之间的通信

    我正在使用 sub pub 模式mufa在 React 组件之间而不是 props 之间进行通信 然后 我们将减轻父组件中的逻辑 正如您将在下面的代码片段中注意到的那样 const on fire mufa class Input exte
  • 使用 codeigniter 电子邮件库时,当主题 > 75 个字符时,电子邮件主题标头格式错误

    当主题超过 75 个字符时 我的 MIME 标头中出现一些乱码 当换行符编码在标头中时 会有一个无效的额外换行符 某些电子邮件网关会使用以下内容退回电子邮件 MIME 字段格式错误 utf 8 Q SUBJECT error 有人有过使用
  • Gradle - 没有主要清单属性

    我正在使用 Gradle 构建 JAR 文件 当我尝试运行它时 出现以下错误 RxJavaDemo jar 中没有主要清单属性 我尝试操纵manifest属性 但我想我忘记添加依赖项或其他内容 我究竟做错了什么 apply plugin j
  • 如果失败X次,nodejs重试功能

    我希望我的函数执行 X 3 次直到成功 在我的情况下我正在跑步kinesis putRecord 来自 AWS API 如果失败 我想再次运行它 直到成功 但尝试次数不超过 3 次 我是 NodeJS 新手 我写的代码很难闻 const p
  • 从复合组件执行 JavaScript

    美好的一天 我有一个问题困扰了我几个小时 这非常简单 我尝试在呈现复合组件时调用 执行 JavaScript 就像您可以使用 html 标签 body 和 onload 执行的操作一样 如何引用要执行的内联 JavaScript
  • BufferedWriter 未将所有内容写入其输出文件

    我有一个 Java 程序 它从文件中逐行读取一些文本 并将新文本写入输出文件 但并不是我写给我的所有文字BufferedWriter程序完成后出现在输出文件中 这是为什么 详细信息 该程序获取 CSV 文本文档并将其转换为 SQL 命令以将
  • 想要创建一个简单的图像亮度控制滑块

    我想实现一个滑块控件来改变图像的亮度 就像这个链接中显示的那样 http camanjs com examples 我对 javascript 相当陌生 事实证明这相当困难 所以现在 我正在使用 CamanJS 库 但不幸的是无法复制它 我
  • 即使两个字符串 s1 和 s3 具有相同的哈希码,== 如何返回 false? [复制]

    这个问题在这里已经有答案了 public static void main String args String str1 java String str2 str1 intern String str3 new String str1 i
  • 如何在 Google App Engine 上读取 Excel 文件

    我正在寻找 python 库的 java 替代品 这是问题如何在 Google App Engine 上读取 Excel 文件 看看博客帖子 如何在GAE上生成Excel文件 它讨论了使用JExcelAPIGAE 中的库 JExcelAPI
  • 如何在WPF中绘制1216个画布元素而不挂应用程序

    我正在开发一个应用程序 我想添加一些很酷的图标 因为我使用的是漂亮的 MahApps 库 所以我想在 MahApps Metro MahApps Metro Resources Icons xaml 中对图标进行可视化 所以我做了一些字符串
  • 如何在本地 tomcat 服务器上部署 angular2 应用程序?

    我一直在使用 lite 服务器开发 angular2 应用程序 现在我想在 tomcat 服务器上部署这个应用程序以与 java 后端连接 我一直在使用 Angular cli 我使用命令 ng build prod 来生成 dist 文件
  • 如何使用jquery获取div值?

    我试图在 chrome 控制台中使用 jquery 获取 div 值 div class col md 3 div class vou col h4 Free Large Bucket h4 span class sku info Vouc
  • PHPUnit 测试 Laravel 资源控制器的异常

    是否可以使用 Laravel 资源控制器测试异常 每次我尝试执行以下操作 expectedException Exception expectedExceptionMessage Just testing this out public f
  • .Net Maui:是否可以将字符串转换为绑定内的颜色?

    参考之前的一个问题 Net maui 如何在绑定中引用颜色 我有一个 CollectionView 绑定到从 SQLite 数据库填充的 ObservableCollection 我想根据数据库表中保存的颜色字符串显示每一行 但是 我只想将
  • 使用 Three.js 从一侧看不到脸部

    我有一个 OBJ 文件 其中加载了 JPG 纹理 从一侧看 脸部是可见的 但从另一侧看 它们是不可见的 脸部可见 有点暗 抱歉 其他侧面 面孔不可见 我尝试添加model doubleSided true 但这似乎并没有改变任何事情 在材料
  • 即使用户调慢时钟,如何限制日常使用?

    我有一个 IOS 应用程序 需要跟踪每天免费使用的持续时间 一旦超过阈值 用户将必须购买该应用程序或等待第二天才能解锁当天的免费使用分钟数 是否有一种本地方法可以检测用户是否已调回时钟 假设没有互联网连接来与时间服务器同步 UIApplic
  • 为什么参数要“借用”值? [复制]

    这个问题在这里已经有答案了 这是一个示例 struct X u32 impl X fn f mut self v u32 fn main let mut x X 42 works let v x 0 x f v cannot use x 0
  • 无法阻止被动事件侦听器内的默认行为 - Swipebox Movie

    我正在使用 Swipebox http brutaldesign github io swipebox 我知道我可以像这样用滑动框幻灯片打开内容 Link to click a href mydiv class my swipebox Cl
  • 如何在 C# 中的富文本框中为文本着色? [复制]

    这个问题在这里已经有答案了 可能的重复 C 如何设置 RichTextBox 中文本的颜色 在 Visual C NET 中 我想在将特定文本输入到富文本框中时更改其颜色 例如 我可能想为世界 hi 着色 因此当用户在富文本框中键入内容时
  • KeyDown 事件未触发,KeyPreview 设置为 true

    我正在构建一个小型表单应用程序 我刚刚启动它 但我有这个问题 如果我将 Control 放入表单 则 KeyDown 事件不会触发 我知道 KeyPreview 属性 并将其设置为 true 但这没有帮助 我也尝试设置 专注于主要形式 也没