Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.10.2013, 20:08   #1
Наталья Баева
Форумчанин
 
Регистрация: 25.04.2012
Сообщений: 128
По умолчанию калькулятор

Пожалуйста, подскажите что изменить в программе чтобы знак "=" работал как в обычном калькуляторе при повторном нажатии повторял предыдущее действие
Код:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
 
namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        bool Evaluate = false;
        protected int nomber1 = 0;
        protected char operation = '+';
        public Form1()
        {
            InitializeComponent();
        }
 
        private void button2_Click(object sender, EventArgs e)
        {
            Button b = (sender as Button);
 
            if (textBox1.Text == "0" || Evaluate)
            {
                textBox1.Text = "";
                Evaluate = false;
            }
            textBox1.Text += b.Text ;
        }
 
        private void button10_Click(object sender, EventArgs e)
        {
            string s =textBox1.Text;
            nomber1 = int.Parse(s);
            label2.Text = "" + operation;
            textBox1.Text = "0";
            Button b =(sender as Button);
            operation = b.Text[0];
            labelOperation.Text = nomber1.ToString(); 
        }
 
        private void button22_Click(object sender, EventArgs e)
        {
            string s = textBox1.Text;
            int nomber2 = int.Parse(s);
            int resultat = 0;
 
                switch (operation)
                {
                    case '+': resultat = nomber1 + nomber2; break;
                    case '-': resultat = nomber1 - nomber2; break;
                    case '*': resultat = nomber1 * nomber2; break;
                    case '/': resultat = nomber1 / nomber2; break;
                }
                textBox1.Text = resultat.ToString();
                Evaluate = true;
            }
 
        private void button21_Click(object sender, EventArgs e)
        {
            textBox1.Text = "0";
            nomber1 = 0;
        }
 
 
 
    }
}
Наталья Баева вне форума Ответить с цитированием
Старый 29.10.2013, 15:54   #2
simples
Форумчанин
 
Регистрация: 03.10.2013
Сообщений: 142
По умолчанию

Цитата:
Сообщение от Наталья Баева Посмотреть сообщение
private void button22_Click(object sender, EventArgs e)
{
string s = textBox1.Text;
int nomber2 = int.Parse(s);
int resultat = 0;

switch (operation)
{
case '+': resultat = nomber1 + nomber2; break;
case '-': resultat = nomber1 - nomber2; break;
case '*': resultat = nomber1 * nomber2; break;
case '/': resultat = nomber1 / nomber2; break;
}
textBox1.Text = resultat.ToString();
Evaluate = true;
}
[/CODE]
если у Вас сюда привязана кнопка "=" то по идее должно работать как Вы хотите.


PS Выкладывайте ВЕСЬ проект запакованный если хотите помощи. Никто не будет дописывать к Вашему коду что то свое и чтобы "точно так же не работало".
simples вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
калькулятор LeoDevel Помощь студентам 1 19.01.2013 21:31
Калькулятор ezhidudek Помощь студентам 20 04.01.2013 00:09
Калькулятор @RH@nhel Паскаль, Turbo Pascal, PascalABC.NET 8 23.01.2011 20:32
калькулятор sergeyvl JavaScript, Ajax 10 22.08.2010 12:22