【问题标题】:How can I disable mouse click highlight?如何禁用鼠标单击突出显示?
【发布时间】:2019-01-19 10:33:41
【问题描述】:

我有一个 C# 科学计算器应用程序。我想禁用单击突出显示,你知道,我用鼠标单击按钮,按钮将突出显示。 这很烦人,因为当按钮突出显示时,我不能使用 enter 键事件,并且在这种情况下无法使用 enter 执行执行功能。计算器使用突出显示的按钮而不是执行功能。

我希望我的问题是可以理解的。我能做什么?

【问题讨论】:

  • 我不确定你在找什么,你想把焦点放在不同的对象上,比如文本框吗?在这种情况下,您可以在点击时将焦点设置回文本框。
  • 即使您的按钮被突出显示,您仍然应该能够接收 keyevent,表单仍然接收 keyevents。
  • 我有按钮。如果我单击该按钮,该按钮将突出显示。之后我按下回车键,不是执行回车键事件,还有我按下的按钮单击事件。这是关于以下问题的图片:ibb.co/i5x7d9
  • 所以在 button_click 事件之后你应该将焦点设置回文本框:textbox.focus()

标签: c# winforms button calculator highlight


【解决方案1】:

在您的表单中,尝试设置KeyPreview = true 并覆盖OnKeyDown:

public ExampleForm()
{
    InitializeComponent();

    KeyPreview = true;
}

protected override void OnKeyDown(KeyEventArgs e)
{
    base.OnKeyDown(e);

    if (e.KeyData == Keys.Enter)
    {
        e.Handled = true;

        // Execute calculator function
    }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-04-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多