Qt 四则运算工具

1.新建一个Qt项目

2.Widget.h

#ifndef WIDGET_H
#define WIDGET_H

#include <QWidget>

#include <QLineEdit>
#include <QPushButton>
#include <QLabel>
#include <QComboBox>
#include <QDebug>
#pragma execution_character_set("utf-8") //支持中文

class Widget : public QWidget
{
    Q_OBJECT

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

private:
    QLineEdit *qle1;
    QLineEdit *qle2;
    QLineEdit *qle3;
    QPushButton *Btn;
    QComboBox *cBox;
    QLabel *label1;
    QLabel *label2;
    QLabel *label3;
    QLabel *label4;

    void CreateWidget();

private slots:
    void on_clicked();


};
#endif // WIDGET_H

Widget.cpp

#include "widget.h"

Widget::Widget(QWidget *parent)
    : QWidget(parent)
{
    CreateWidget();
    connect(this->Btn,SIGNAL(clicked()),this,SLOT(on_clicked()));
}

Widget::~Widget()
{
}

void Widget::CreateWidget(){
    this->setFixedSize(550,300);//设置窗口的大小
    this->setWindowTitle("四则运算");//设置窗口标题

    qle1 = new QLineEdit(this);
    qle1->setGeometry(220,20,150,40);

    qle2 = new QLineEdit(this);
    qle2->setGeometry(220,120,150,40);

    qle3 = new QLineEdit(this);
    qle3->setGeometry(220,220,150,40);
    //qle3->setEnabled(false);
    qle3->setReadOnly(true);

    Btn = new QPushButton(this);
    Btn->setGeometry(400,120,100,50);
    Btn->setText("计算");


    label1 = new QLabel(this);
    label1->setGeometry(120,20,100,40);
    label1->setAlignment(Qt::AlignRight|Qt::AlignVCenter);
    label1->setText("输入值1:");

    label2 = new QLabel(this);
    label2->setGeometry(120,120,100,40);
    label2->setAlignment(Qt::AlignRight|Qt::AlignVCenter);
    label2->setText("输入值2:");

    label3 = new QLabel(this);
    label3->setGeometry(120,220,100,40);
    label3->setAlignment(Qt::AlignRight|Qt::AlignVCenter);
    label3->setText("输出值:");

    label4 = new QLabel(this);
    label4->setGeometry(240,170,100,40);
    label4->setAlignment(Qt::AlignCenter);
    label4->setText("等于");

    cBox = new QComboBox(this);
    cBox->setGeometry(260,70,50,40);
    QStringList strList;
    strList<<"加"<<"减"<<"乘"<<"除";
    cBox->addItems(strList);

}


void Widget::on_clicked(){
    //int a = qle1->text().toInt();
    double a = qle1->text().toDouble();
    double b = qle2->text().toDouble();
    double c;
    int curIndex = cBox->currentIndex();
    switch(curIndex)
    {
    case 0 :
        c = a+b;
        break;
    case 1 :
        c = a-b;
        break;
    case 2 :
        c = a*b;
        break;
    case 3 :
        c = a/b;
        break;
    }
    QString s = QString::number(c);
    qle3->setText(s);
    qDebug() << s;

}

3.运行结果

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值