When I try to use the Enter key as equal on the keyboard, it always enters the number that was recently pressed on screen. I would like to use the Enter on the keyboard as equal and not enter in the number that was recently pressed on the screen by the user.
I am writing a calculator in C# with Visual Studio Community 2013.
public calculatorForm()
{
InitializeComponent();
}
// Manages the numeracy and period buttons
private void mathematicalButtons_Click(object sender, EventArgs e)
{
if ((calculatorResults.Text == "0")||(operationPressed))
calculatorResults.Clear();
operationPressed = false;
Button a = (Button)sender;
if (a.Text == ".")
{
if(!calculatorResults.Text.Contains("."))
calculatorResults.Text = calculatorResults.Text + a.Text;
}
else
calculatorResults.Text = calculatorResults.Text + a.Text;
}
// Manages the addition, subtract, multiplication, and divide buttons
private void operatorButtons_Click(object sender, EventArgs e)
{
Button a = (Button)sender;
if (value != 0)
{
equalButton.PerformClick();
operationPressed = true;
operation = a.Text;
equationLabel.Text = value + " " + operation;
}
else
{
operation = a.Text;
value = double.Parse(calculatorResults.Text);
operationPressed = true;
equationLabel.Text = value + " " + operation;
}
}
// Manages the clear button
private void clearButton_Click(object sender, EventArgs e)
{
calculatorResults.Text = "0";
value = 0;
equationLabel.Text = "";
}
// Manages the clear entry button
private void clearEntryButton_Click(object sender, EventArgs e)
{
calculatorResults.Text = "0";
}
// Manages the equal button
private void equalButton_Click(object sender, EventArgs e)
{
equationLabel.Text = "";
switch (operation)
{
case "+":
calculatorResults.Text = (value + Double.Parse(calculatorResults.Text)).ToString();
break;
case "-":
calculatorResults.Text = (value - Double.Parse(calculatorResults.Text)).ToString();
break;
case "*":
calculatorResults.Text = (value * Double.Parse(calculatorResults.Text)).ToString();
break;
case "/":
calculatorResults.Text = (value / Double.Parse(calculatorResults.Text)).ToString();
break;
default:
break;
}
value = Double.Parse(calculatorResults.Text);
operation = "";
}
// Allows user to use computer keyboard to enter data
private void calculatorForm_KeyPress(object sender, KeyPressEventArgs e)
{
switch (e.KeyChar.ToString())
{
case "0":
zeroButton.PerformClick();
break;
case "1":
oneButton.PerformClick();
break;
case "2":
twoButton.PerformClick();
break;
case "3":
threeButton.PerformClick();
break;
case "4":
fourButton.PerformClick();
break;
case "5":
fiveButton.PerformClick();
break;
case "6":
sixButton.PerformClick();
break;
case "7":
sevenButton.PerformClick();
break;
case "8":
eightButton.PerformClick();
break;
case "9":
nineButton.PerformClick();
break;
case ".":
periodButton.PerformClick();
break;
case "/":
divideButton.PerformClick();
break;
case "*":
multiplicationButton.PerformClick();
break;
case "-":
subtractButton.PerformClick();
break;
case "+":
additionButton.PerformClick();
break;
case "=":
equalButton.PerformClick();
break;
default:
break;
}
}
}