QT中UI实现小功能的步骤

1、新建一个目录

要勾选Generate form,生成一个.ui文件

把Shadow build的勾选取消,避免产生两个文件夹!

2、具体步骤

1.在UI界面中拖拽需要的组件对象

2.修改组件对象的名称

3.保存并运行,根据运行结果适当调整界面布局

4.业务处理 选中组件对象,右键 转到槽 ,选择信号, 确定

5.在生成的槽函数中 增加业务处理代码即可

6.验证!

3、使用UI界面实现一个简易的运算器

1、UI界面设计如下

2、demo.h文件如下

复制代码
#ifndef DEMO1_H
#define DEMO1_H

#include <QWidget>

QT_BEGIN_NAMESPACE
namespace Ui { class demo1; }
QT_END_NAMESPACE

class demo1 : public QWidget
{
    Q_OBJECT

public:
    demo1(QWidget *parent = nullptr);
    ~demo1();
    void op_clicked();
    void clear_clicked();

private slots:
    void on_btn_sum_clicked();

    void on_btn_clear_clicked();

private:
    Ui::demo1 *ui;
};
#endif // DEMO1_H

3、 demo.cpp文件如下

复制代码
#include "demo1.h"
#include "ui_demo1.h"
#include <QString>
#include <QMessageBox>

demo1::demo1(QWidget *parent): QWidget(parent), ui(new Ui::demo1)
{
    ui->setupUi(this);
}

demo1::~demo1()
{
    delete ui;
}

void demo1::on_btn_sum_clicked()
{
    double sop1 = this->ui->op1->text().toDouble();
    double sop2 = this->ui->op2->text().toDouble();

    if(this->ui->comboBox->currentText()=="+")
    {
        this->ui->res->setText(QString::number((sop1 + sop2),'f',2));
    }
    else if(this->ui->comboBox->currentText()== "-")
    {
        this->ui->res->setText(QString::number((sop1 - sop2),'f',2));
    }
    else if(this->ui->comboBox->currentText()== "*")
    {
        this->ui->res->setText(QString::number((sop1 * sop2),'f',2));
    }
    else if(this->ui->comboBox->currentText()== "/")
    {
        if(sop2 == 0)
        {
            this->ui->op2->clear();
            QMessageBox::warning(this,"警告","除数不能为0!!!");
        }
        this->ui->res->setText(QString::number((sop1 / sop2),'f',2));
    }
}


void demo1::on_btn_clear_clicked()
{
    this->ui->op1->clear();
    this->ui->op2->clear();
    this->ui->res->clear();
}

4、具体效果

相关推荐
CappuccinoRose4 分钟前
CSS 语法学习文档(十七)
前端·css·学习·布局·houdini·瀑布流布局·csspaintingapi
啊阿狸不会拉杆20 分钟前
《计算机视觉:模型、学习和推理》第 1 章 - 绪论
人工智能·python·学习·算法·机器学习·计算机视觉·模型
tritone24 分钟前
初探云原生:在阿贝云免费服务器上学习负载均衡的实践心得
服务器·学习·云原生
好奇龙猫1 小时前
【日语学习-日语知识点小记-日本語体系構造-JLPT-N2前期阶段-第一阶段(14):単語文法】
学习
我命由我123451 小时前
Visual Studio - Visual Studio 修改项目的字符集
c语言·开发语言·c++·ide·学习·visualstudio·visual studio
持梦远方1 小时前
QML 与 C++ 后端交互学习笔记
c++·qt·学习·交互
四谎真好看1 小时前
SSM学习笔记(SpringMVC篇 Day01)
笔记·学习·学习笔记·ssm
工业HMI实战笔记2 小时前
工业机器人HMI:协作机器人的人机交互界面
人工智能·ui·性能优化·机器人·自动化·人机交互·交互
musenh2 小时前
springmvc学习
java·学习
啊阿狸不会拉杆2 小时前
《计算机视觉:模型、学习和推理》第 2 章-概率概述
人工智能·python·学习·算法·机器学习·计算机视觉·ai