-1

我目前正在做我的作业,这是一个 Windows 形式的计算器,我面临的问题是我已将表单接受按钮设置为相等按钮,但通过按下回车键,退格按钮正在工作,退格按钮有背景图像,当我运行我的应用程序,然后退格按钮突出显示或聚焦。为什么会发生?

4

1 回答 1

3
 this.KeyPreview = true;

需要在initializeComponent之后

事实上,除非有特殊原因,否则什么都不应该放在这前面。我敢肯定这里还有更多错误,但是从这个开始,然后我们将继续前进

尝试

equalButton.Focus() 

在 initialComponent() 之后

但是,如果您突出显示了一个控件并按下回车键,它将选择该按钮。在您的网络浏览器上进行文件打印,使用您的键和选项卡突出显示取消并按 Enter。将选择取消。

接受按钮仅用于在文本框内时使用,该文本框具有

AcceptReturn=false;

或者我相信如果您没有突出显示控件。您需要做的是进入每个控制 keypreview 事件,并在

if (e.keycode == keys.Enter)
    equalsButton_Click(new object(), EventArgs.empty)

编辑 我要做的是添加到您的每个按钮 onfocus 事件中,它们都可以指向此方法

public button1_onfocus(object sender, Eventargs e)
{
    myTextbox.focus();
}

这样你的文本框将永远是焦点,如果他们点击返回,你的文本框就有焦点,所以它会触发你的接受按钮。

我的所有代码示例都没有经过语法准确性测试

于 2012-05-31T18:48:01.317 回答