Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "kalkulator.h"
- #include "ui_kalkulator.h"
- Kalkulator::Kalkulator(QWidget *parent) :
- QMainWindow(parent),
- ui(new Ui::Kalkulator)
- {
- ui->setupUi(this);
- on_pb_c_clicked();
- }
- Kalkulator::~Kalkulator()
- {
- delete ui;
- }
- void Kalkulator::le_display_add_char(QString text)
- {
- QString tekst = ui->le_display->text();
- if(tekst == "0" ||(isliczba1==true && isoperacja==true))
- {
- tekst = text;
- isoperacja=false;
- }
- else if(tekst!="0")
- {
- tekst += text;
- }
- ui->le_display->setText(tekst);
- }
- void Kalkulator::operation(Operacje opera)
- {
- if(operacja>0){
- on_pb_equals_clicked();
- }
- liczba1=ui->le_display->text().replace(',','.').toDouble();
- isliczba1=true;
- operacja=opera;
- isoperacja=true;
- ifcomma=false;
- }
- void Kalkulator::on_pb_0_clicked()
- {
- le_display_add_char("0");
- }
- void Kalkulator::on_pb_comma_clicked()
- {
- if(ifcomma == false)
- {
- le_display_add_char(ui->le_display->text() != "0" ? "," : "0,");
- ifcomma = true;
- }
- }
- void Kalkulator::on_pb_1_clicked()
- {
- le_display_add_char("1");
- }
- void Kalkulator::on_pb_2_clicked()
- {
- le_display_add_char("2");
- }
- void Kalkulator::on_pb_3_clicked()
- {
- le_display_add_char("3");
- }
- void Kalkulator::on_pb_4_clicked()
- {
- le_display_add_char("4");
- }
- void Kalkulator::on_pb_5_clicked()
- {
- le_display_add_char("5");
- }
- void Kalkulator::on_pb_6_clicked()
- {
- le_display_add_char("6");
- }
- void Kalkulator::on_pb_7_clicked()
- {
- le_display_add_char("7");
- }
- void Kalkulator::on_pb_8_clicked()
- {
- le_display_add_char("8");
- }
- void Kalkulator::on_pb_9_clicked()
- {
- le_display_add_char("9");
- }
- void Kalkulator::on_pb_div_clicked()
- {
- operation(Operacje::div);
- }
- void Kalkulator::on_pb_multi_clicked()
- {
- operation(Operacje::multi);
- }
- void Kalkulator::on_pb_sub_clicked()
- {
- operation(Operacje::sub);
- }
- void Kalkulator::on_pb_add_clicked()
- {
- operation(Operacje::add);
- }
- void Kalkulator::on_pb_c_clicked()
- {
- liczba1 = 0;
- liczba2 = 0;
- wynik = 0;
- pamiec=0;
- ifcomma = false;
- isliczba1=false;
- isoperacja=false;
- isequals=false;
- operacja=Operacje::none;
- ui->le_display->setText("0");
- }
- void Kalkulator::on_pb_MR_clicked()
- {
- ui->le_display->setText(QString::number(pamiec).replace('.',','));
- }
- void Kalkulator::on_pb_M_clicked()
- {
- pamiec=ui->le_display->text().replace(',','.').toDouble();
- }
- void Kalkulator::on_pb_equals_clicked()
- {
- if(operacja>0)
- {
- liczba2=ui->le_display->text().replace(',','.').toDouble();
- wynik=0;
- switch (operacja) {
- case Operacje::add:
- wynik=liczba1+liczba2;
- break;
- case Operacje::multi:
- wynik=liczba1*liczba2;
- break;
- case Operacje::div:
- wynik=liczba1/liczba2;
- break;
- case Operacje::sub:
- wynik=liczba1-liczba2;
- break;
- }
- ui->le_display->setText(QString::number(wynik).replace('.',','));
- ifcomma = false;
- isliczba1=false;
- isoperacja=false;
- isequals=true;
- liczba1=0;
- liczba2=0;
- operacja=Operacje::none;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement