所以我已经有一段时间了,仍然无法让我的计算器做最后一件事。
我知道了谢谢!
在我按下等号按钮或 Tan、Sin、Cos 或 Mod 按钮后,我希望我的计算器输入一个新数字。基本上,即使答案仍然存在,文本框中也没有任何内容。目前,所有号码都保留,新号码添加到末尾。我不希望这种情况发生。
计算后,如果我按下一个数字按钮,我希望它清除屏幕并重新添加新数字。以下是我到目前为止的代码。
public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
    }
    Double FirstNumber;
    string mathOperator = "";
    private void AddButton_Click(object sender, EventArgs e)
    {
        FirstNumber = Convert.ToDouble(DisplayTextBox.Text);
        mathOperator = "+";
        DisplayTextBox.Text = "";
        DisplayTextBox.Focus();
    }
    private void EqualButton_Click(object sender, EventArgs e)
    {
        Double SecondNumber;
        SecondNumber = Convert.ToDouble(DisplayTextBox.Text);
        switch (mathOperator)
        {
            case "+":
                DisplayTextBox.Text = (FirstNumber + SecondNumber).ToString();
                break;
            case "-":
                DisplayTextBox.Text = (FirstNumber - SecondNumber).ToString();
                break;
            case "*":
                DisplayTextBox.Text = (FirstNumber * SecondNumber).ToString();
                break;
            case "/":
                DisplayTextBox.Text = (FirstNumber / SecondNumber).ToString();
                break;
            default:
                break;
        }
    }
    private void button12_Click(object sender, EventArgs e)
    {
        FirstNumber = Convert.ToDouble(DisplayTextBox.Text);
        FirstNumber *= -1;
        DisplayTextBox.Text = FirstNumber.ToString();
    }
    private void ButtonMinus_Click(object sender, EventArgs e)
    {
        FirstNumber = Convert.ToDouble(DisplayTextBox.Text);
        mathOperator = "-";
        DisplayTextBox.Text = "";
        DisplayTextBox.Focus();
    }
    private void ButtonMultiply_Click(object sender, EventArgs e)
    {
        FirstNumber = Convert.ToDouble(DisplayTextBox.Text);
        mathOperator = "*";
        DisplayTextBox.Text = "";
        DisplayTextBox.Focus();
    }
    private void ButtonDivide_Click(object sender, EventArgs e)
    {
        FirstNumber = Convert.ToDouble(DisplayTextBox.Text);
        mathOperator = "/";
        DisplayTextBox.Text = "";
        DisplayTextBox.Focus();
    }
    private void ButtonMod_Click(object sender, EventArgs e)
    {
        FirstNumber = Convert.ToDouble(DisplayTextBox.Text);
        DisplayTextBox.Text = Math.Tan(FirstNumber).ToString();
    }
    private void Button1_Click(object sender, EventArgs e)
    {
        DisplayTextBox.Text = DisplayTextBox.Text + "1";
    }
    private void Button2_Click(object sender, EventArgs e)
    {
        DisplayTextBox.Text = DisplayTextBox.Text + "2";
    }
    private void Button3_Click(object sender, EventArgs e)
    {
        DisplayTextBox.Text = DisplayTextBox.Text + "3";
    }
    private void Button4_Click(object sender, EventArgs e)
    {
        DisplayTextBox.Text = DisplayTextBox.Text + "4";
    }
    private void Button5_Click(object sender, EventArgs e)
    {
        DisplayTextBox.Text = DisplayTextBox.Text + "5";
    }
    private void Button6_Click(object sender, EventArgs e)
    {
        DisplayTextBox.Text = DisplayTextBox.Text + "6";
    }
    private void Button7_Click(object sender, EventArgs e)
    {
        DisplayTextBox.Text = DisplayTextBox.Text + "7";
    }
    private void Button8_Click(object sender, EventArgs e)
    {
        DisplayTextBox.Text = DisplayTextBox.Text + "8";
    }
    private void Button9_Click(object sender, EventArgs e)
    {
        DisplayTextBox.Text = DisplayTextBox.Text + "9";
    }
    private void ButtonClear_Click(object sender, EventArgs e)
    {
        DisplayTextBox.Text = "";
        mathOperator = "";
    }
    private void ButtonOff_Click(object sender, EventArgs e)
    {
        Application.Exit();
    }
    private void ButtonTan_Click(object sender, EventArgs e)
    {
        FirstNumber = Convert.ToDouble(DisplayTextBox.Text);
        DisplayTextBox.Text = Math.Tan(FirstNumber).ToString();
    }
    private void ButtonSin_Click(object sender, EventArgs e)
    {
        FirstNumber = Convert.ToDouble(DisplayTextBox.Text);
        DisplayTextBox.Text = Math.Sin(FirstNumber).ToString();
    }
    private void ButtonCos_Click(object sender, EventArgs e)
    {
        FirstNumber = Convert.ToDouble(DisplayTextBox.Text);
        DisplayTextBox.Text = Math.Cos(FirstNumber).ToString();
    }
    private void Button0_Click(object sender, EventArgs e)
    {
        if (DisplayTextBox.Text.Length >= 1)
        {
            DisplayTextBox.Text = DisplayTextBox.Text + "0";
        }
        else
        {
            return;
        }
    }
    private void DecimalButton_Click(object sender, EventArgs e)
    {
        if (DisplayTextBox.Text.Contains("."))
        {
            return;
        }
        else
        {
            DisplayTextBox.Text = DisplayTextBox.Text + ".";
        }
    }
}