HMI-35-【运动模式】实现速度表和转速表自检
今天咱们给速度表和转速表增加一个自检功能, 就是从小走大最大再回到最小。用到的和上篇一样,也是有一个自己写的定时器。
目前进度
这次一个动画放不下了,两部分看吧,上部分就是展示了自检功能
[TOC]
关键字:
HMI
、QTimer
、动画
、ui
、Qt
搞一个自己定时器,不用QTimer
今天这个还是先撸一个定时器,两个表的定时器除了名字不同,代码都一样,代码如下:
class MDS_LeftThread : public QThread
{
Q_OBJECT
public:
/**
* @brief run
* 重载线程函数
*/
virtual void run();
signals:
void signalselfInspection(int number);
void signalSelfInspectionfinished();
public:
bool runFlag = true;
private:
int m_number = 0;
bool flagDESC = false;
};
void MDS_LeftThread::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 MDS_Left::selfInspection()
{
if(m_liftThread)
{
m_liftThread->runFlag = true;
m_liftThread->start();
}
}
void MDS_Left::slot_leftSelfInspection(int number)
{
setCarSpeed(2.4*number);
}
说明:
本项目中所使借鉴原型来自:[吉利] 博瑞GE | 仪表HMI设计、吉利汽车HMI项目。
设计图的所有权和解释权都归吉利汽车所有。
本项目所有资源文件均有打不死的小海复刻制作。
本项目代码暂时不会开源,有需要的源码的可与我联系,左上角二维码加微信。
本项目仅限学习交流、禁止商业使用。