【问题标题】:Detecting KeyDown when pressing a button按下按钮时检测 KeyDown
【发布时间】:2021-03-03 01:00:59
【问题描述】:

我正在开发 AutoClicker,我希望能够使用热键打开或关闭答题器。我还希望热键是可绑定的,因此对于初学者来说,单击按钮并检测键盘上按下的内容会很好,但无论我尝试什么,它都不想工作。我已将 KeyPreview 设置为 true,我已经尝试了感觉上百万种方法来做到这一点。

private void autoClickerHKey_KeyDown(object sender, KeyEventArgs e)
        {
            this.autoClickerHKey.Text = "CLICKER BIND: " + Keys.KeyCode.ToString();
            // HKey = Keys.KeyCode.ToString();
        }

如果我做错了,请告诉我,但在我的脑海中,我可以将HKey 设置为Keys.KeyCode.ToString(),然后在if(keyData == Keys.HKey) 中使用HKey 来打开或关闭我的开关。

我可能在这里遗漏了一些非常明显的东西,但我已经对此进行了很长时间的修改,老实说我无法再思考了。

【问题讨论】:

  • 不太清楚。如果您将HKey 变量的类型从string 更改为Keys (private Keys HKey = Keys.YourHotKeu;),那么您可以通过e.KeyCode 属性将其与当前按下的键进行比较。也许here发布的两个答案给了你一些提示。

标签: c# binding keypress


【解决方案1】:

使用e.KeyCode.ToString() 工作于Keys.KeyCode.ToString()。我认为我的项目有问题,因为我很确定我以前尝试过这种方法。无论如何,在将所有内容作为一个新项目重做之后,它就可以工作了。问题也可能是我使用了 bunifu 按钮而不是默认的 windows 按钮。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-06
    • 1970-01-01
    相关资源
    最近更新 更多