C++【QT系列】手搓计算器

废话不多说直接放图(左为Win10原版计算器,右为手搓计算器)

全部功能肯定没那么容易做,也只能整整基本的算术运算,当然有点小BUG也是正常的,因为原版的逻辑判断有点多,关系到各种状态,希望你们有兴趣的可以自己完善下,文件已打包可下载。
链接:计算器下载
提取码:nisy
在这里插入图片描述

widget.h

#if 1
#ifndef WIDGET_H
#define WIDGET_H

#include <QLabel>
#include <QWidget>
#include <QPushButton>
#include <QGraphicsEffect>

class Widget:public QWidget{
   
   
    Q_OBJECT
public:
    Widget(QWidget* parent=0);
    ~Widget();
private slots:
    void Action(bool);//按钮响应动作
private:
    #define WIDGET_WIDTH 322
    #define WIDGET_HEIGHT 502
    #define BUTTON_WIDTH 75
    #define BUTTON_HEIGHT 49
    void CreateUI();//创建UI
    QLabel* labLowerLabel;//上面的标签
    QLabel* labUpperLabel;//下面的标签
    QString* strOperator;//运算符号
    QString* strUpperValue;//上面的数值
    QString* strLowerValue;//下面的数值
    QPushButton* btnCalculationButton[20];//计算按钮
    QGraphicsDropShadowEffect* efeCalculationButtonShadow[20];//计算按钮的阴影
};
#endif // WIDGET_H
#endif

widget.cpp

#include "widget.h"

Widget::Widget(QWidget* parent):QWidget(parent){
   
   
    CreateUI();
}
Widget::~Widget(){
   
   
}
void Widget::CreateUI(){
   
   
    this->setWindowOpacity(1.0);
    this->setWindowTitle("计算器");
    this->resize(WIDGET_WIDTH, WIDGET_HEIGHT);
    this->setFixedSize(WIDGET_WIDTH, WIDGET_HEIGHT);

    this->strOperator = new QString("");
    this->strUpperValue = new QString("");
    this->strLowerValue = new QString("0");

    this->labLowerLabel = new QLabel(this);
    this->labLowerLabel->setText("0");
    this->labLowerLabel->setGeometry(5, 78, 310, 49);
    this->labLowerLabel->setAlignment(Qt::AlignRight);
    this->labLowerLabel->setFont(QFont("Microsoft YaHei", 33));

    this->labUpperLabel = new QLabel(this)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值