HMI-39-【节能模式】实现中心仪表转速表自检及左右仪表布局

238 阅读2分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

头图

HMI-39-【节能模式】实现中心仪表转速表自检及左右仪表布局

昨天我们把中心仪表的迷你仪表应写出来了,并且实现了速度表的显示,今天我们来搞一下这个中心仪表的自检,也就是转速表的自检。

当前进度

当前进度如下,今天在原来的基础上,实现了中心mini仪表的车速模拟,顺带手把限速表也做了,就是一个背景加上一个数字。


HMI-39-【节能模式】实现中心仪表转速表自检及左右仪表布局当前进度转速表自检实现自检函数启动线程定时器定时器线程run函数线程对应槽函数增加左右仪表布局第二阶段成果展示第一阶段成果展示

关键字: HIMIQPainterQtdrawPixmapeco

转速表自检实现

如果你是从舒适模式或者运动模式过来的,那么你看这个会非常相似,其实就是一样,我连参数都懒得,就是换了类名,后期可能会处理一下这个东西。不能一个表一个类了。直接上代码

自检函数启动线程定时器

void MDE_Center::selfInspection()
{
    if(m_centerThread)
    {
        m_centerThread->runFlag = true;
        m_centerThread->start();
    }
}

定时器线程run函数

void MDE_CenterThread::run()
{
    while (runFlag)
    {
        emit signalselfInspection(m_number);
        if(flagDESC)
        {
​
            if(m_number == 0)
            {
                runFlag = !runFlag;
                flagDESC = !flagDESC;
                emit signalSelfInspectionfinished();
            }
            m_number--;
        }
        else
        {
            m_number++;
            if(m_number == 100)
            {
                flagDESC = !flagDESC;
            }
        }
        msleep(8);
    }
}

线程对应槽函数

void MDE_Center::slot_leftSelfInspection(int number)
{
    setTacho(80*number);
}

完成以上内容,咱们的自检就完成了。

增加左右仪表布局

顺带手新建两个左右仪表,先贴两个日历上去占地方,如下图,左右仪表最地城还是QWidget,上面用的是两个TabWidget,用来扩展不同的功能模块。

image-20220222210317871

第二阶段成果展示

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

[video(video-2AqJ88TY-1645273728489)(type-bilibili)(url-player.bilibili.com/player.html…img-blog.csdnimg.cn/img_convert…基于Qt的汽车仪表模拟 2.0)]

第一阶段成果展示

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

[video(video-ArCvRvBQ-1642664938100)(type-bilibili)(url-player.bilibili.com/player.html…img-blog.csdnimg.cn/img_convert…基于Qt的汽车仪表模拟 1.0))]


说明:

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

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

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

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

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