HMI-46-【多媒体】Title界面实现 1

简介: 今天我将尝试实现以下多媒体部的Title部分,主要是时间、左右空调温度。

头图

HMI-46-【多媒体】Title界面实现 1

​ 今天我将尝试实现以下多媒体部的Title部分,主要是时间、左右空调温度。

当前进度


[toc]

关键字: HMIMultifunctionQtlighttitle

显示时间

​ 在UI文件中使用一个Label来显示时间,并给他设置样式表,如下图所示

image-20220327155514366

样式表

font: 350 32pt "Microsoft YaHei UI";
color: rgb(255, 255, 255);

​ 在逻辑控制中,在控制面板中调用多媒体的设置时间函数,多媒体在调用Title 的设置时间函数。如下图所示。

image-20220327155406290

控制面板代码

void ControlPanel::slot_getCurrentTime(QTime m_time)
{
    ui->pushButton_closeTime->setText(m_time.toString("hh:mm"));
    if(m_meterDisplay)                                                          // 设置液晶仪表时间
    {
        m_meterDisplay->setTime(m_time.toString("hh:mm"));
    }
    if(m_multifunction)                                                         // 设置多媒体时间
    {
//        m_multifunction->setTime(m_time.toString("hh:mm ap"));              // 12小时制
        m_multifunction->setTime(m_time.toString("hh:mm"));                 // 24小时
    }
}

多媒体代码

void MultifunctionDisplay::setTime(QString time)
{
    if(m_title)
        m_title->setTime(time);
}

Title 代码

void MFD_Title::setTime(QString time)
{
    ui->label_time->setText(time);
}

空调温度显示

界面设置

​ 使用三个Label搭起来,一个用来显示主要温度,一个显示温度单位,一个用来显示小数。

image-20220327191724827

实现代码

void MFD_Title::setAirConditionerTemperature(double value, int index)
{

    int point = int(value*10) %10;
    int one = value;
    switch (index) {
    case 0:
    {
        ui->label_airConditionerLeft_one->setText(QString::number(one));
        ui->label_airConditionerRight_one->setText(QString::number(one));
        ui->label_airConditionerLeft_point->setText("." + QString::number(abs(point)));
        ui->label_airConditionerRight_point->setText("." + QString::number(abs(point)));
        break;
    }
    case 1:
    {
        ui->label_airConditionerLeft_one->setText(QString::number(one));
        ui->label_airConditionerLeft_point->setText("." + QString::number(abs(point)));
        break;
    }
    case 2:
    {
        ui->label_airConditionerRight_one->setText(QString::number(one));
        ui->label_airConditionerRight_point->setText("." + QString::number(abs(point)));
        break;
    }
    }
}

主控制台代码

void MainControl::on_verticalSlider_AirConditionerTemperature_left_valueChanged(int value)
{
    emit signal_AirConditionerTemperature(1,value/10.0);
    if(ui->checkBox_AirConditionerTemperature->isChecked())
        ui->verticalSlider_AirConditionerTemperature_Right->setValue(value);
}


void MainControl::on_verticalSlider_AirConditionerTemperature_Right_valueChanged(int value)
{
    emit signal_AirConditionerTemperature(2,value/10.0);
    if(ui->checkBox_AirConditionerTemperature->isChecked())
        ui->verticalSlider_AirConditionerTemperature_left->setValue(value);
}

控制台代码

    connect(m_maincontrol,&MainControl::signal_AirConditionerTemperature,[=](int index,double value){
            if(m_multifunction)
                m_multifunction->setAirConditionerTemperature(value,index);
    });

第三阶段成果展示

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

[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

相关文章
|
7天前
|
云安全 人工智能 自然语言处理
|
11天前
|
人工智能 Java API
Java 正式进入 Agentic AI 时代:Spring AI Alibaba 1.1 发布背后的技术演进
Spring AI Alibaba 1.1 正式发布,提供极简方式构建企业级AI智能体。基于ReactAgent核心,支持多智能体协作、上下文工程与生产级管控,助力开发者快速打造可靠、可扩展的智能应用。
986 35
|
5天前
|
机器学习/深度学习 人工智能 自然语言处理
Z-Image:冲击体验上限的下一代图像生成模型
通义实验室推出全新文生图模型Z-Image,以6B参数实现“快、稳、轻、准”突破。Turbo版本仅需8步亚秒级生成,支持16GB显存设备,中英双语理解与文字渲染尤为出色,真实感和美学表现媲美国际顶尖模型,被誉为“最值得关注的开源生图模型之一”。
655 4
|
7天前
|
机器学习/深度学习 人工智能 数据可视化
1秒生图!6B参数如何“以小博大”生成超真实图像?
Z-Image是6B参数开源图像生成模型,仅需16GB显存即可生成媲美百亿级模型的超真实图像,支持中英双语文本渲染与智能编辑,登顶Hugging Face趋势榜,首日下载破50万。
524 25
|
14天前
|
数据采集 人工智能 自然语言处理
Meta SAM3开源:让图像分割,听懂你的话
Meta发布并开源SAM 3,首个支持文本或视觉提示的统一图像视频分割模型,可精准分割“红色条纹伞”等开放词汇概念,覆盖400万独特概念,性能达人类水平75%–80%,推动视觉分割新突破。
857 59
Meta SAM3开源:让图像分割,听懂你的话
|
4天前
|
弹性计算 网络协议 Linux
阿里云ECS云服务器详细新手购买流程步骤(图文详解)
新手怎么购买阿里云服务器ECS?今天出一期阿里云服务器ECS自定义购买流程:图文全解析,阿里云服务器ECS购买流程图解,自定义购买ECS的设置选项是最复杂的,以自定义购买云服务器ECS为例,包括付费类型、地域、网络及可用区、实例、镜像、系统盘、数据盘、公网IP、安全组及登录凭证详细设置教程:
194 114
|
11天前
|
人工智能 前端开发 算法
大厂CIO独家分享:AI如何重塑开发者未来十年
在 AI 时代,若你还在紧盯代码量、执着于全栈工程师的招聘,或者仅凭技术贡献率来评判价值,执着于业务提效的比例而忽略产研价值,你很可能已经被所谓的“常识”困住了脚步。
568 50
大厂CIO独家分享:AI如何重塑开发者未来十年
|
7天前
|
存储 自然语言处理 测试技术
一行代码,让 Elasticsearch 集群瞬间雪崩——5000W 数据压测下的性能避坑全攻略
本文深入剖析 Elasticsearch 中模糊查询的三大陷阱及性能优化方案。通过5000 万级数据量下做了高压测试,用真实数据复刻事故现场,助力开发者规避“查询雪崩”,为您的业务保驾护航。
380 24