QT第二天(计算器实现)

目录

实现功能:加,减,乘,除,取余,小数点,取反(),数字回退,全部清0。

一、实现结果(win7的计算器)对比:

二、实现思路

三、代码实现

1、首先是将按钮摆放好(双击.ui文件界面)

 2、主窗口定义函数 

 3、接收id槽函数

4、运算按钮槽函数,其实都是重复的代码

5、等号运算槽函数

6、其他槽函数

7、头文件,也就一些声明的槽函数

实现效果

总结:


实现功能:加,减,乘,除,取余,小数点,取反(这个最难搞,要兼容前面的),数字回退,全部清0。

一、实现结果(win7的计算器)对比:

win7自带计算器:

我做的:

二、实现思路

1、用QButtonGroup()按钮组让数字按键放入同一个组中,就可以不用写0-9的按钮槽函数,大量节省代码。

2、将加减乘除这些按钮单独定义槽,作用是储存点击的数字和运算符。(误区:这些函数内部并不是实现直接进行运算,而是将运算的数值符号储存。给等号"="槽函数内部计算);

3、定义三个QString类型的变量,第一个是存储大标签的数据,第二个是存储小标签的数据(即右上角顶部那个位置的数据),第三个是标志位,判断是否取反(+-),就在运算减号那里用了一下。

4、需要调用一些QString字符串函数。

三、代码实现

1、首先是将按钮摆放好(双击.ui文件界面)

 2、主窗口定义函数 

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "QButtonGroup"
#include <qDebug>
定义一个按钮组对象
QButtonGroup *bg;
QString num="0";    //存储大标签数据
QString num2="0";   //存储小标签数据
QString num3="0";   //标志位
MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
    , ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    绑定按钮组
    bg = new QButtonGroup(this);
    bg->addButton(ui->pushButton_1,1);  添加按钮,用id传递
    bg->addButton(ui->pushButton_2,2);    数字按键
    bg->a
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值