Qt(C++)实现的简易计算器

个人博客地址https://gs42.org,点击即可直接阅读全文,QQ交流群:584930947

软件工程的作业,让写一个计算器,为此花两天抽时间看了看Qt入门,然后就开搞了。

环境Qt 5.13.1,MinGw 7.3.0 32-bit,IDE:Qt Creator 4.10.0

新建Qt Widgets 应用,项目名称Calculator,基类选择GWidget,类名MyWidget。

1.首先是页面,直接拖拖拖,没用栅格,先垂直在水平布局了,改了一点参数,解决问题。

实现图片

 2.编写信号和槽,并代码实现计算器功能

mywidget.h 最终更改如下:

#ifndef MYWIDGET_H
#define MYWIDGET_H

#include <QWidget>
#include <string.h>
#include <stdio.h>
#include <QDialog>

QT_BEGIN_NAMESPACE
namespace Ui { class MyWidget; }
QT_END_NAMESPACE

class QErrorMessage;

class MyWidget : public QWidget
{
    Q_OBJECT

public:
    MyWidget(QWidget *parent = nullptr);
    ~MyWidget();

private slots:
    void on_pushButtonCe_clicked();

    void on_pushButtonC_clicked();

    void on_pushButtonDe_clicked();

    void on_pushButtonChu_clicked();

    void on_pushButton7_clicked();

    void on_pushButton8_clicked();

    void on_pushButton9_clicked();

    void on_pushButtonChen_clicked();

    void on_pushButton4_clicked();

    void on_pushButton5_clicked();

    void on_pushButton6_clicked();

    void on_pushButtonJian_clicked();

    void on_pushButton1_clicked();

    void on_pushButton2_clicked();

    void on_pushButton3_clicked();

    void on_pushButtonJia_clicked();

    void on_pushButtonHuan_clicked();

    void on_pushButton0_clicked();

    void on_pushButtonDian_clicked();

    void on_pushButtonDenyu_clicked();

    void AddNum(int i);

    void ShowNum();

    void Operator(int i);

    void TwiceOperator();

    double OpreatorTrue();

    void DToStr(double c);

private:
    Ui::MyWidget *ui;
    QErrorMessage * errordlg;
    char showstr[100];
    double a = 0, b = 0;
    int cha = 0, wei = 10, showlen=0, oper;
    bool sign = false, signdian = false, starta = false, startb = false, signa = true, signb = true;
};
#endif // MYWIDGET_H

mywidget.cpp 最终更改如下:

#include "mywidget.h"
#include "ui_mywidget.h"
#include<QtDebug>
#include<string>
#include<QString>
#include<QErrorMessage>

const double lin = 0.0000000001;

MyWidget::MyWidget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::MyWidget)
{
    ui-&
  • 3
    点赞
  • 47
    收藏
    觉得还不错? 一键收藏
  • 9
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值