9月12日 QT

news2024/11/24 17:58:21

//设置图片缩放适应label
              ui->label->setScaledContents(true);
              // 在spinbox后方设置$特殊符号
                  ui->spinBox->setSuffix(" 斤");

    //给肉类combobox加入项目
    QStringList Meat_List={"请选择","猪肉","鸭肉"};
    ui->comboBox->addItems(Meat_List);
    ui->comboBox->setCurrentIndex(0); // 设置默认选择第1个选项

    //给蔬菜combobox加入项目
    QStringList Shucai_List={"请选择","黄瓜","白菜"};
    ui->comboBox_2->addItems(Shucai_List);
    ui->comboBox_2->setCurrentIndex(0); // 设置默认选择第1个选项

    //给水果combobox加入项目
    QStringList Fruit_List={"请选择","苹果","香蕉"};
    ui->comboBox_3->addItems(Fruit_List);
    ui->comboBox_3->setCurrentIndex(0); // 设置默认选择第1个选项

    //设置微调框范围
        ui->spinBox->setRange(0,5);

    //显示默认欢迎图片
    map = new QPixmap("/home/ubuntu/jpg/welcome.png");
    ui->label->setPixmap(*map);
}

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

void Widget::on_comboBox_activated(int index)//肉类选项,当用户选择了⼀个选项时发出,这个时候相当于用户点开下拉框, 并且⿏标划过某个选项.此时还没有确认做出选择.
{

    //设置label显示肉类图片
    if(index>0)
    {
         map = new QPixmap("/home/ubuntu/jpg/meat.png");
         ui->label->setPixmap(*map);
         if(index==1)
         {
             ui->price_label->setText(QString("18/斤"));
         }
         else
         {
             ui->price_label->setText(QString("8/斤"));
         }
}
}

void Widget::on_comboBox_2_activated(int index)//蔬菜选项
{
    //设置label显示蔬菜图片
    if(index>0)
    {
         map = new QPixmap("/home/ubuntu/jpg/shucai.png");
         qDebug()<< index;
         ui->label->setPixmap(*map);
         if(index==1)
         {
             ui->price_label->setText(QString("7/斤"));
         }
         else
         {
             ui->price_label->setText(QString("6/斤"));
         }
}
}


void Widget::on_comboBox_3_activated(int index)
{
    //设置label显示水果图片
    if(index>0)
    {
         map = new QPixmap("/home/ubuntu/jpg/fruit.png");
         qDebug()<< index;
         ui->label->setPixmap(*map);
         if(index==1)
         {
             ui->price_label->setText(QString("19/斤"));
         }
         else
         {
             ui->price_label->setText(QString("6/斤"));
         }
}
}

void Widget::on_pushButton_clicked()//加入购物车
{
     QString selectedText;
     int ret;
     QString s;
        num=ui->spinBox->value();//获取购买数量个数
        //获取combobox的index
        int meat_index=ui->comboBox->currentIndex();
        int shucai_index2=ui->comboBox_2->currentIndex();
        int fruit_index=ui->comboBox_3->currentIndex();

        if(meat_index!=0)
        {
            meat_index==1?price+=num*18:price+=num*8;
            selectedText = ui->comboBox->itemText(meat_index);// 要添加的新选项文本
            ret = ui->comboBox_4->findText(selectedText, Qt::MatchExactly);  //使用findText方法来检查选项是否已存在,findText的第二个参数Qt::MatchExactly表示进行完全匹配
            // 如果ret不是-1,表示找到了匹配的选项,因此不需要再添加
            if (ret == -1)
            {
                // 如果没有找到匹配的选项,则添加新选项
                ui->comboBox_4->addItem(selectedText);
            }
        }

        if(shucai_index2!=0)
        {
            shucai_index2==1?price+=num*7:price+=num*6;

            selectedText = ui->comboBox_2->itemText(shucai_index2);
            ret = ui->comboBox_4->findText(selectedText, Qt::MatchExactly);
            if (ret == -1)
            {
                // 如果没有找到匹配的选项,则添加新选项
                ui->comboBox_4->addItem(selectedText);
            }
        }

        if(fruit_index!=0)
        {
            fruit_index==1?price+=num*19:price+=num*6;

            selectedText = ui->comboBox_3->itemText(fruit_index);
            ret = ui->comboBox_4->findText(selectedText, Qt::MatchExactly);
            if (ret == -1)
            {
                // 如果没有找到匹配的选项,则添加新选项
                ui->comboBox_4->addItem(selectedText);
            }

        }

        s.sprintf("%d 元",price);
        ui->label_7->setText(s);//打出总价

         ui->comboBox->setCurrentIndex(0); // 自动回到第一个选项
         ui->comboBox_2->setCurrentIndex(0);
         ui->comboBox_3->setCurrentIndex(0);
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2129767.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

数据放到GPU上,运行程序卡住检查方法

这个问题一定是要结合具体的代码&#xff0c;下面就自己遇到问题&#xff0c;询问chatGPT后发现问题所在的过程进行记录&#xff0c;当然绝大部分情况下都是batch_size设置太大了&#xff0c;显卡内存不足导致 部分重点代码&#xff1a; 导入模型部分略 #自定义数据集有关类 c…

无人机 PX4 飞控 | EKF2简介与使用方法

无人机 PX4 飞控 | EKF2简介与使用方法 PX4 EKF2简介EKF 的启动ecl EKF 的优缺点缺点优点 运行单个EKF实例运行多个EKF实例 PX4 EKF2简介 PX4是一个流行的开源飞控系统&#xff0c;广泛用于无人机和其他自动驾驶飞行器。EKF2&#xff08;Extended Kalman Filter 2&#xff09;…

IEEE 802.11a OFDM系统的仿真(续)

&#xff08;内容源自详解MATLAB&#xff0f;SIMULINK 通信系统建模与仿真 刘学勇编著第九章内容&#xff0c;有兴趣的读者请阅读原书&#xff09; clear all %%%%%%%参数设计部分%%%%%%%Nsp52;%系统子载波数&#xff08;不包括直流载波&#xff09; Nfft64;%FFT长度 Ncp16;…

ppt文档怎么转换成pdf?快来试试这几种转换方法!

ppt文档怎么转换成pdf&#xff1f;在日常工作与学习的广阔舞台上&#xff0c;PPT&#xff0c;这一演示文稿的常青树&#xff0c;无疑是表达创意、传递信息的重要工具&#xff0c;然而&#xff0c;正如每枚硬币都有其两面&#xff0c;PPT在带来便捷的同时&#xff0c;也显露出一…

js | TypeError: Cannot read properties of null (reading ‘indexOf’) 【解决】

js | TypeError: Cannot read properties of null (reading ‘indexOf’) 【解决】 描述 概述 在前端开发中&#xff0c;遇到TypeError: Cannot read properties of null (reading indexOf)这类错误并不罕见。这个错误通常表明你试图在一个null值上调用indexOf方法&#xff0c…

Linux基础---05输入输出重定向

一.输出重定向符号> 操作1 > 文件 &#xff1a;将操作1的结果覆盖到文件里&#xff0c;并且此文件之前的数据全部清空。 操作2 >>文件&#xff1a;将操作2的结果追加到文件里&#xff0c;原文件的内容不会被清空。 操作3 1>right.txt 2>wrong.txt:操作3的返…

C 盘突然爆满,罪魁祸首竟然是 ...... !

今天打开电脑的时候突然发现 C 盘进度条变红了&#xff0c;这很不正常&#xff01; 做软件开发的应该都会经常在各种磁盘中查找文件和资料&#xff0c;也就会频繁打开 此电脑 窗口&#xff0c;因此即使不是刻意去观察各个磁盘的容量&#xff0c;也会时不时瞟一眼每个盘的占用条…

Java特殊文件xml—利用Dom4J解析xml文件(完整详解,附有代码+案例)

文章目录 三十.特殊文件30.1 xml概述30.1 xml文件30.2 Dom4J解析xml30.2.1 案列130.2.2 案例2 三十.特殊文件 30.1 xml概述 可扩展标记语言 可扩展&#xff1a;标签名字可以自己定义 优点&#xff1a;易于阅读&#xff0c;可以配置成组出现的数据 缺点&#xff1a;解析比较复…

对称矩阵的压缩存储

1.给自己出题&#xff1a;自己动手创造&#xff0c;画一个5行5列的对称矩阵 2.画图&#xff1a;按“行优先”压缩存储上述矩阵&#xff0c;画出一维数组的样子 3.简答&#xff1a;写出元素 i,j 与 数组下标之间的对应关系 4.画图&#xff1a;按“列优先”压缩存储上述矩阵&a…

盐湖卤水中提取铷、铯

盐湖卤水中提取铷、铯是一个复杂但具有重要意义的过程&#xff0c;因为铷、铯是稀有的金属元素&#xff0c;在高科技、航空航天、新能源等领域有广泛应用。以下是从盐湖卤水中提取铷、铯的详细分析&#xff1a;我国盐湖资源丰富&#xff0c;盐类资源总量约12000亿吨&#xff0c…

2024.9.12(k8s环境搭建2)

一、接9.11 19、部署calico的pod 4. 查看容器和节点状态 异常处理&#xff1a; 出现Init:0/3&#xff0c;查看node节点 /var/log/messages是否有除网络异常之外的报错信息 三台机器执行&#xff1a;&#xff08;更新版本&#xff09; yum list kernel yum update kernel reb…

i++与++i在for循环中效果一样?

首先说结果 是的&#xff0c;在Visual Studio 2022中&#xff0c;不同于直接printf&#xff0c;在for循环中的i与i是同样的效果&#xff08;都当作了i&#xff09; 这是编译器干的好事。 如图比对 i i 原因探寻 | i i的底层原理 找到一篇博客&#xff0c;我目前还看不太明…

关于Spring Cloud 表达式注入漏洞——分析复现

更多漏洞分析复现&#xff0c;可前往无问社区查看http://www.wwlib.cn/index.php/artread/artid/5175.html 一、漏洞成因 近期&#xff0c;Spring Cloud官方发布了一则安全公告&#xff0c;修复了一个Spring Cloud Function中的 SPEL表达式注入漏洞。该漏洞是由于Spring Clou…

123.rk3399 uboot(2017.09) 源码分析3(2024-09-12)

啃了几天initf_dm,发现啃不动啊&#xff0c;但是后面的函数比这个简单&#xff0c;要不先把简单的做了吧。 本文接上一篇https://blog.csdn.net/zhaozhi0810/article/details/142050827 一、c的入口 board_init_f 1.3.12 arch_cpu_init_dm&#xff08;common/board_f.c&#…

AWS账号申请指南:必须绑定银行卡吗?

小伙伴们&#xff0c;大家好&#xff01;今天九河云来和大家聊一聊一个常见的问题&#xff1a;申请AWS账号时&#xff0c;是否必须要绑定银行卡呢&#xff1f;相信很多小伙伴在注册AWS账号时都会遇到这个问题。为了帮助大家更好地了解这个过程&#xff0c;小编特意整理了一些信…

SprinBoot+Vue旅游景点管理系统设计与实现

目录 1 项目介绍2 项目截图3 核心代码3.1 Controller3.2 Service3.3 Dao3.4 application.yml3.5 SpringbootApplication3.5 Vue 4 数据库表设计5 文档参考6 计算机毕设选题推荐7 源码获取 1 项目介绍 博主个人介绍&#xff1a;CSDN认证博客专家&#xff0c;CSDN平台Java领域优质…

模 板

导引&#xff1a; 模板是为了解决函数类型不同所重载&#xff0c;带来的麻烦简化。利用一个模板&#xff08;示列&#xff09;代码&#xff0c;让编译器编写出不同类型的代码&#xff0c;满足所需。 int swap(int &p1,int &p2) {int pp1;p1p2;p2p; } char swap(char …

优化安防视频监控的关键体验:视频质量诊断技术如何应用在监控系统中?

随着科技的不断进步&#xff0c;视频监控平台在公安、司法、教育、基础设施等众多领域得到了广泛应用。然而&#xff0c;视频图像的质量直接关系到监控系统的应用效果&#xff0c;是反映监控系统运维效果的重要指标之一。因此&#xff0c;视频监控平台需要配备一系列先进的视频…

基于剂型改良的复杂注射剂分析!

改良型新药在医药领域的重要性日益凸显&#xff0c;其中脂质体注射剂作为一类重要的改良型新药&#xff0c;因其独特的临床优势和技术创新&#xff0c;正受到行业的高度关注。本文基于药融咨询团队的深度分析报告&#xff0c;探讨脂质体注射剂的技术创新、市场前景以及在中国的…

动手学深度学习(三)深度学习计算

一、模型构造 1、继承Module类来构造模型来构造模型 class MLP(nn.Module):# 声明带有模型参数的层&#xff0c;这里声明了两个全连接层def __init__(self, **kwargs):# 调用MLP父类Block的构造函数来进行必要的初始化。这样在构造实例时还可以指定其他函数# 参数&#xff0c…