Калькулятор на C# и WinForms. Часть 2

Калькулятор на C# и WinForms. Часть 2

Калькулятор на C# и WinForms. Часть 2

В одной из прошлых статей мы создали форму для калькулятора, с помощью C# и WinForms, создав текстовое поле и кнопки с цифрами.
В сегодняшней статье мы добавим калькулятору способность выполнять сложение, вычитание, умножение, а также деление. И все это мы реализуем на языке C# и шаблонах Windows Forms. Так что, давайте приступим.

Прежде, запустим Visual Studio и откроем последний проект Калькулятор.

Калькулятор на C# и WinForms. Часть 2

В появившемся списке выберите нужный вам

Далее зайдем в панель элементов на вкладке Вид и перетащим кнопки на форму. В свойстве элемента кнопки, открывающееся правой кнопкой мыши, найдите поле Text и переименуйте их, так чтобы получилось как показано ниже

Калькулятор на C# и WinForms. Часть 2

Также и поле (Name) переименуйте на название соответствующих арифметических операций

сложение — add

вычитание — sub

деление — div

умножение — mult

очистить — clear

точка — dot

равно — equal

При таком именовании в качестве обработчика получится имя add_Click и так далее.

Для создания обработчика, дважды щелкаем по кнопке.
Далее перейдем к коду.


//  создадим в начале две переменные
// для числа из Textbox и знака операции

 public partial class Form1 : Form
    {

      double FirstValue;
      string arithmetic;

// перейдем к обработчику операции сложения
        private void add_Click(object sender, EventArgs e)
        {   
            // присвоим переменной число введенное в Textbox
            FirstValue = Convert.ToDouble(textBox1.Text);
            // нажатие кнопки очистит текстовое поле для ввода   
            // второго числа 
            textBox1.Text = "0";
            // переменной arithmetic присвоим знак сложения
            arithmetic = "+"; 
        }

// дважды щелкнем по каждой кнопке с арифметическими операциями и // и проделаем все то же самое за исключением знака операции, т.е 
// у обработчика  sub_Click он будет как знак минус

        private void dot_Click(object sender, EventArgs e)
        {
            textBox1.Text = textBox1.Text + ".";
        }
        
        // очистим текстовое поле
        private void clear_Click(object sender, EventArgs e)
        {
            textBox1.Text = "0";  
        }

        
        private void equal_Click(object sender, EventArgs e)
        {   
            // переменная  второго числа
            // переменная результата 
            double SecondValue;
            double outcome;

            
            SecondValue = Convert.ToDouble(textBox1.Text);
            // если нажата кнопка сложения arithmetic получит значение
            // +, в результате выполниться код из скобок
            if (arithmetic == "+") 
            {
                outcome = (FirstValue + SecondValue);
                textBox1.Text = Convert.ToString(outcome);
                FirstValue = outcome;
            }
            if (arithmetic == "-")
            {
                outcome = (FirstValue - SecondValue);
                textBox1.Text = Convert.ToString(outcome);
                FirstValue = outcome;
            }
            if (arithmetic == "*")
            {
                outcome = (FirstValue * SecondValue);
                textBox1.Text = Convert.ToString(outcome);
                FirstValue = outcome;
            }
            if (arithmetic == "/")
            {
                if (SecondValue == 0)
                {
                    textBox1.Text = "НЕ ДОПУСТИМАЯ ОПЕРАЦИЯ";
                }
                else
                {
                    outcome = FirstValue/SecondValue;
                    textBox1.Text = Convert.ToString(outcome);
                    FirstValue = outcome; 
                }
            }

        }

    }
}
        

Результат:

Калькулятор на C# и WinForms. Часть 2

Таким образом, мы создали простой калькулятор, соединив логику языка C# и графические возможности Windows Forms

Источник