HMI-47-【多媒体】Title界面实现 2

简介: 今天我将尝试实现以下多媒体部的Title部分,主要是空调出风模式、空调风量、空调模式.

头图

HMI-47-【多媒体】Title界面实现 2

​ 今天我将尝试实现以下多媒体部的Title部分,主要是空调出风模式、空调风量、空调模式.

当前进度


[toc]

关键字: HMIMultifunctionQtlighteco

空调风向显示

​ 风向界面上就是刷图片,用三个label表示三个风向,通过代码控制三个label的显示和隐藏,来达到显示风向的功能,直接上代码

界面控制代码

void MFD_Title::setWindDirection(int type)
{
    switch (type) {
    default:
    {
        ui->label_fengxiang_1->hide();
        ui->label_fengxiang_2->hide();
        ui->label_fengxiang_3->hide();
    }
    case 0:
    {
        ui->label_fengxiang_1->show();
        ui->label_fengxiang_2->hide();
        ui->label_fengxiang_3->hide();
        break;
    }
    case 1:
    {
        ui->label_fengxiang_2->show();
        ui->label_fengxiang_1->hide();
        ui->label_fengxiang_3->hide();
        break;
    }
    case 2:
    {
        ui->label_fengxiang_3->show();
        ui->label_fengxiang_2->hide();
        ui->label_fengxiang_1->hide();
        break;
    }
    case 3:
    {
        ui->label_fengxiang_1->show();
        ui->label_fengxiang_2->show();
        ui->label_fengxiang_3->hide();
        break;
    }
    case 4:
    {
        ui->label_fengxiang_1->show();
        ui->label_fengxiang_3->show();
        ui->label_fengxiang_2->hide();
        break;
    }
    case 5:
    {
        ui->label_fengxiang_2->show();
        ui->label_fengxiang_3->show();
        ui->label_fengxiang_1->hide();
        break;
    }
    case 6:
    {
        ui->label_fengxiang_1->show();
        ui->label_fengxiang_2->show();
        ui->label_fengxiang_3->show();
        break;
    }
    case 7:
    {
        ui->label_fengxiang_1->hide();
        ui->label_fengxiang_2->hide();
        ui->label_fengxiang_3->hide();
        break;
    }

    }
}

控制界面代码

static int WindDirection = 0;
void MainControl::on_pushButton_windDirection_clicked()
{
    emit signal_WindDirection(WindDirection);
    WindDirection++;
    if(WindDirection>7)
        WindDirection = 0;
}

控制台代码

    connect(m_maincontrol,&MainControl::signal_WindDirection,this,[=](int type){
            if(m_multifunction)
                m_multifunction->setWindDirection(type);
    });

其实如果对接的好,可以直接使用信号槽连接过去,但是呢,这里有部分数据需要做处理,这里我就用的匿名函数来做了。

空调风量实现

直接上代码

实现代码

void MFD_Title::setWindValue(int value)
{
    QString style = QString("border-image: url(:/MultifunctionDisplay/Resources/MultifunctionDisplay/Title/fengli_%1.png);").arg(int(value/12.5));
    ui->label_fengli->setStyleSheet(style);
}

控制界面代码

void MainControl::on_verticalSlider_WindValue_valueChanged(int value)
{
    emit signal_WindValue(value);
}

控制台代码

    connect(m_maincontrol,&MainControl::signal_WindValue,this,[=](int value){
        if(m_multifunction)
            m_multifunction->slot_setWindValue(value);
    });

第三阶段成果展示

​ 目前已完成液晶仪表三种模式的初步显示,小模块后期根据精力更新了,主要还得找美术来搞资源,自己能力不够。暂未跟新计划。展示如下:

[video(video-yznBr6e3-1648369267384)(type-bilibili)(url-https://player.bilibili.com/player.html?aid=679609061)(image-https://ucc.alicdn.com/images/user-upload-01/img_convert/4d157e1cb316b007a2cb9790cb2dbfde.png)(title-基于Qt的汽车仪表模拟 3.0)]

第二阶段成果展示

​ 目前以完成HUD界面及接口开发,液晶仪表舒适模式和运动模式的开发。展示如下:

[video(video-2AqJ88TY-1645273728489)(type-bilibili)(url-https://player.bilibili.com/player.html?aid=594179292)(image-https://ucc.alicdn.com/images/user-upload-01/img_convert/e75563c3ce68bc980547dde8f6e265ba.png)(title-基于Qt的汽车仪表模拟 2.0)]

第一阶段成果展示

​ 目前以完成HUD界面及接口开发,液晶仪表舒适模式开发。展示如下:

[video(video-ArCvRvBQ-1642664938100)(type-bilibili)(url-https://player.bilibili.com/player.html?aid=77197267)(image-https://ucc.alicdn.com/images/user-upload-01/img_convert/ccddd04e0cef191fd33d7f58d41adb24.png)(title-基于Qt的汽车仪表模拟 1.0))]


说明:

本项目中所使借鉴原型来自:[吉利] 博瑞GE | 仪表HMI设计吉利汽车HMI项目

多媒体部分是来自吉利博瑞2017旗舰版界面所有权和解释权都归吉利汽车所有。

设计图的所有权和解释权都归吉利汽车所有。

本项目所有资源文件均由打不死的小海复刻制作。

本项目代码暂时不会开源,有需要的源码的可与我联系,左上角二维码加微信。

本项目仅限学习交流、禁止商业使用。


博客签名2021

相关文章
|
人工智能 测试技术 开发者
Python 潮流周刊#15:如何分析 FastAPI 异步请求的性能?
Python 潮流周刊#15:如何分析 FastAPI 异步请求的性能?
458 2
|
3月前
|
机器学习/深度学习 存储 PyTorch
Neural ODE原理与PyTorch实现:深度学习模型的自适应深度调节
Neural ODE将神经网络与微分方程结合,用连续思维建模数据演化,突破传统离散层的限制,实现自适应深度与高效连续学习。
226 3
Neural ODE原理与PyTorch实现:深度学习模型的自适应深度调节
|
Linux
Linux必知词汇:兼容分时系统(Compatible Time-Sharing System,CTSS)
Linux必知词汇:兼容分时系统(Compatible Time-Sharing System,CTSS)
1530 0
|
安全 vr&ar 计算机视觉
AR智能眼镜在警务安防的人脸识别场景,有哪些应用和优势?
AR智能眼镜结合人脸识别技术,为安防领域带来高效精准的解决方案。通过实时采集与分析人脸信息,快速识别重点人员并即时报警,广泛应用于机场、车站、大型活动等场景,显著提升安全防控能力。
AR智能眼镜在警务安防的人脸识别场景,有哪些应用和优势?
|
Android开发 数据格式 XML
BluetoothAdapter在Android6.0/7.0+以上startDiscovery不能发现蓝牙设备问题
BluetoothAdapter在Android6.0+以上startDiscovery不能发现蓝牙设备问题 问题的重要原因之一是Android 6.0+,Android 7.0+的权限问题引起的。
1855 0
|
机器学习/深度学习 自然语言处理 算法
|
存储 数据挖掘 索引
Pandas Series 和 DataFrame 常用属性详解及实例
Pandas 是 Python 数据分析的重要工具,其核心数据结构 Series 和 DataFrame 广泛应用。本文详细介绍了这两种结构的常用属性,如 `index`、`values`、`dtype` 等,并通过具体示例帮助读者更好地理解和使用这些属性,提升数据分析效率。
670 4
|
机器学习/深度学习 自然语言处理 算法
通过RAG增强大模型回答原本无法回答的问题
RAG(检索增强生成)是一种结合信息检索和文本生成技术的方法,旨在提升大规模语言模型处理特定问题的能力。通过先从大量文档中检索相关信息,再利用这些信息生成更准确的答案,RAG特别适用于需要最新数据或专业知识的场景,如医疗咨询、法律建议等。此方法不仅提高了答案的质量和准确性,还增强了系统的可扩展性和适应性。随着技术进步,RAG有望在更多领域发挥重要作用。
1128 2
|
JavaScript Java 测试技术
基于Java的健身房预约系统的设计与实现(源码+lw+部署文档+讲解等)
基于Java的健身房预约系统的设计与实现(源码+lw+部署文档+讲解等)
140 0