需要帮助制作一个简单的计算器。我不能在计算器的文本框中输入多个数字。每次我把第二个数字替换成第一个需要帮助!
我的计算器文本框中不能超过一个输入数字,而是用第二个数字输入替换第一个数字
namespace Calculator_Project
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void InputOutputArea_TextChanged(object sender, EventArgs e)
{
}
private void One_Click(object sender, EventArgs e)
{
int Input = 1;
InputOutputArea.Text = Input.ToString();
}
private void Two_Click(object sender, EventArgs e)
{
int Input = 2;
InputOutputArea.Text = Input.ToString();
}
private void Three_Click(object sender, EventArgs e)
{
}
private void Four_Click(object sender, EventArgs e)
{
}
private void Five_Click(object sender, EventArgs e)
{
}
private void Six_Click(object sender, EventArgs e)
{
}
private void Seven_Click(object sender, EventArgs e)
{
}
private void Eight_Click(object sender, EventArgs e)
{
}
private void Nine_Click(object sender, EventArgs e)
{
}
private void Eql_Click(object sender, EventArgs e)
{
}
private void AddB_Click(object sender, EventArgs e)
{
}
private void Minus_Click(object sender, EventArgs e)
{
}
private void MultiplyB_Click(object sender, EventArgs e)
{
}
private void DivideB_Click(object sender, EventArgs e)
{
}
private void Zero_Click(object sender, EventArgs e)
{
}
private void ResetB_Click(object sender, EventArgs e)
{
InputOutputArea.Clear();
}
}
}
答案 0 :(得分:1)
你应该使用
InputOutputArea.Text += Input.ToString();
(注意'+')以便附加到文本框。
答案 1 :(得分:1)
private void Two_Click(object sender, EventArgs e)
{
int Input = 2;
InputOutputArea.Text += Input.ToString();
}
您必须使用+ =将其他文字添加到第一个文本的下一个
答案 2 :(得分:1)
这是你的问题:
InputOutputArea.Text = Input.ToString();
这取代了文本框的内容,而不是添加到文本框中。
InputOutputArea.Text += Input.ToString();
上面的代码应该按照你的要求去做。
值得记住的是,使用+
连接字符串的效率相当低,因此除非绝对必要,否则不要在性能关键代码中执行此操作。在这些情况下,String-builder几乎总是更好。
答案 3 :(得分:1)
每个答案都在谈论前一段文本与当前文本的连接,但我想提出更多的建议;
您不需要为执行相同任务的所有按钮创建单独的事件处理程序,希望每个按钮的文本都是您需要在textBox中显示的数字(例如btnOne
将保持{ {1}}和1
拥有btnTwo
等等。通过使用此Text,我们可以重用以下处理程序,让2
成为处理程序,其定义如下:
btnNumber_Click