UI界面
widget.h代码
#ifndef WIDGET_H #define WIDGET_H #include <QWidget>
namespace Ui {
class Widget;
}
class Widget : public QWidget
{ Q_OBJECT
public:
explicit Widget(QWidget *parent = 0);
~Widget();
private slots:
void on_num1_clicked();
void on_num2_clicked();
void on_num3_clicked();
void on_num4_clicked();
void on_num5_clicked();
void on_num6_clicked();
void on_num7_clicked();
void on_num8_clicked();
void on_num9_clicked();
void on_num0_clicked();
void on_spot_clicked();
void on_except_clicked();
void on_add_clicked();
void on_reduce_clicked();
void on_ride_clicked();
void on_clear_clicked();
void on_equal_clicked();
private:
Ui::Widget *ui;
QString a,c;
QStringList b;
};
#endif // WIDGET_H
widget.cpp代码
#include "widget.h"
#include "ui_widget.h"
Widget::Widget(QWidget *parent) :
QWidget(parent),
ui(new Ui::Widget)
{
ui->setupUi(this);
a.clear();
b.clear();
}
Widget::~Widget()
{
delete ui;
}
void Widget::on_num1_clicked()
{ a+="1";
c+=a;
ui->lineEdit->setText(c);
}
void Widget::on_num2_clicked()
{ a+="2";
c+=a;
ui->lineEdit->setText(c);
}
void Widget::on_num3_clicked()
{ a+="3";
c+=a;
ui->lineEdit->setText(c);
}
void Widget::on_num4_clicked()
{ a+="4";
c+=a;
ui->lineEdit->setText(c);
}
void Widget::on_num5_clicked()
{ a+="5";
c+=a;
ui->lineEdit->setText(c);
}
void Widget::on_num6_clicked()
{ a+="6";
c+=a;
ui->lineEdit->setText(c);
}
void Widget::on_num7_clicked()
{ a+="7";
c+=a;
ui->lineEdit->setText(c);
}
void Widget::on_num8_clicked()
{ a+="8";
c+=a;
ui->lineEdit->setText(c);
}
void Widget::on_num9_clicked()
{ a+="9";
c+=a;
ui->lineEdit->setText(c);
}
void Widget::on_num0_clicked()
{ a+="0";
c+=a;
ui->lineEdit->setText(c);
}
void Widget::on_spot_clicked()
{ a+=".";
c+=a;
ui->lineEdit->setText(c);
}
void Widget::on_except_clicked()
{ c+="/";
ui->lineEdit->setText(c);
b.insert(0,a);
a.clear();
b.insert(1,"/");
}
void Widget::on_add_clicked()
{
c+="+";
ui->lineEdit->setText(c);
b.insert(0,a);
a.clear();
b.insert(1,"+");
}
void Widget::on_reduce_clicked()
{ c+="-";
ui->lineEdit->setText(c);
b.insert(0,a);
a.clear();
b.insert(1,"-");
}
void Widget::on_ride_clicked()
{ c+="*";
ui->lineEdit->setText(c);
b.insert(0,a);
a.clear();
b.insert(1,"*");
}
void Widget::on_clear_clicked()
{ a.clear();
c.clear();
ui->lineEdit->setText(a);
b.clear();
ui->lineEdit_2->setText(a);
}
void Widget::on_equal_clicked()
{
b.insert(2,a);
if(b.at(1)=="+"){
double
x=QString(b.at(0)).toDouble()+QString(b.at(2)).toDouble();
ui->lineEdit_2->setText(QString::number(x));
}
if(b.at(1)=="-"){
double
x=QString(b.at(0)).toDouble()-QString(b.at(2)).toDouble();
ui->lineEdit_2->setText(QString::number(x));
}
if(b.at(1)=="/"){
double
x=QString(b.at(0)).toDouble()/QString(b.at(2)).toDouble();
ui->lineEdit_2->setText(QString::number(x));
}
if(b.at(1)=="*"){
double
x=QString(b.at(0)).toDouble()*QString(b.at(2)).toDouble();
ui->lineEdit_2->setText(QString::number(x));
}
}