HMI-57-【多媒体】收音机 1
HMI-57-【多媒体】收音机 1
前面几篇已经音乐播放器简单搞了一下,可以放音乐了。今天艺术家发来了收音机的界面,今天先搞搞。
当前进度
今天把上下菜单按钮实现了,和音乐一模一样,下面就直接上代码,没有啥要说的,想知道详细的可以看前面几篇音乐的解析,或者直接看的代码吧。
文章目录
- HMI-57-【多媒体】收音机 1
- 当前进度
- 头文件
- 源文件
- 第三阶段成果展示
- 第二阶段成果展示
- 第一阶段成果展示
关键字:
HMI
、Multifunction
、Qt
、QMediaPlayer
、Music
头文件
#ifndef MFD_RADIO_H
#define MFD_RADIO_H#include <QWidget>namespace Ui {
class MFD_Radio;
}class MFD_Radio : public QWidget
{Q_OBJECTpublic:explicit MFD_Radio(QWidget *parent = nullptr);~MFD_Radio();
private slots:/*** @brief on_pushButton_menu_clicked* 主菜单按钮槽函数*/void on_pushButton_menu_clicked();/*** @brief on_pushButton_navigation_clicked* 导航按钮槽函数*/void on_pushButton_navigation_clicked();/*** @brief on_pushButton_multimedia_clicked* 音乐按钮槽函数*/void on_pushButton_multimedia_clicked();/*** @brief on_pushButton_radio_clicked* 收音机按钮槽函数*/void on_pushButton_radio_clicked();/*** @brief on_pushButton_phone_clicked* 收音机按钮槽函数*/void on_pushButton_phone_clicked();/*** @brief on_pushButton_return_clicked* 返回按钮槽函数*/void on_pushButton_return_clicked();/*** @brief on_pushButton_menubtn_clicked* 子菜单按钮槽函数*/void on_pushButton_menubtn_clicked();/*** @brief on_pushButton_am_clicked* AM按钮槽函数*/void on_pushButton_am_clicked();/*** @brief on_pushButton_fm_clicked* FM按钮槽函数*/void on_pushButton_fm_clicked();signals:/*** @brief signal_returnToMenu* 返回主菜单信号*/void signal_returnToMenu();/*** @brief signal_return* 返回函数*/void signal_return();/*** @brief signal_ToNavigation* 转到导航信号*/void signal_ToNavigation();/*** @brief signal_ToMusic* 转到音乐*/void signal_ToMusic();/*** @brief signal_ToPhone* 转到电话信号*/void signal_ToPhone();
private:/*** @brief paintEvent* @param event* 重绘事件,用于绘制背景*/void paintEvent(QPaintEvent* event);/*** @brief initBottomPushbutton* 初始按钮*/void initBottomPushbutton();
private:Ui::MFD_Radio *ui;
};#endif // MFD_RADIO_H
源文件
#include "mfd_radio.h"
#include "ui_mfd_radio.h"
#include <QPainter>
#include <QTabBar>
MFD_Radio::MFD_Radio(QWidget *parent) :QWidget(parent),ui(new Ui::MFD_Radio)
{ui->setupUi(this);ui->label_mainback->hide();ui->pushButton_menubtn->setStyleSheet("QPushButton{border-image: url(:/Multimedia/Resources/MultifunctionDisplay/Multimedia/menubtn.png);}""QPushButton:pressed{border-image: url(:/Multimedia/Resources/MultifunctionDisplay/Multimedia/menubtn_1.png);}");initBottomPushbutton();ui->tabWidget_menu->tabBar()->hide();ui->tabWidget_menu->setStyleSheet("QTabWidget::pane{border-top: 2px solid #00000000;}");ui->tabWidget_menu->hide();ui->pushButton_am->setStyleSheet("QPushButton{border-image: url(:/Radio/Resources/MultifunctionDisplay/Radio/am.png);}""QPushButton:pressed{border-image: url(:/Radio/Resources/MultifunctionDisplay/Radio/am_1.png);}");ui->pushButton_fm->setStyleSheet("QPushButton{border-image: url(:/Radio/Resources/MultifunctionDisplay/Radio/fm_2.png);}""QPushButton:pressed{border-image: url(:/Radio/Resources/MultifunctionDisplay/Radio/fm_1.png);}");}MFD_Radio::~MFD_Radio()
{delete ui;
}void MFD_Radio::paintEvent(QPaintEvent *event)
{Q_UNUSED(event)QPainter painter;painter.begin(this);painter.drawPixmap(0,0,width(),height(), QPixmap(":/Radio/Resources/MultifunctionDisplay/Radio/mainback.png")); // 绘制背景painter.end();
}void MFD_Radio::initBottomPushbutton()
{ui->pushButton_menu->setStyleSheet("QPushButton{border-image: url(:/Multimedia/Resources/MultifunctionDisplay/Multimedia/menu.png);}""QPushButton:pressed{border-image: url(:/Multimedia/Resources/MultifunctionDisplay/Multimedia/menu_1.png);}");ui->pushButton_return->setStyleSheet("QPushButton{border-image: url(:/Multimedia/Resources/MultifunctionDisplay/Multimedia/return.png);}""QPushButton:pressed{border-image: url(:/Multimedia/Resources/MultifunctionDisplay/Multimedia/return_1.png);}");ui->pushButton_multimedia->setStyleSheet("QPushButton{border-image: url(:/Multimedia/Resources/MultifunctionDisplay/Multimedia/multimedia_2.png);}""QPushButton:pressed{border-image: url(:/Multimedia/Resources/MultifunctionDisplay/Multimedia/multimedia_1.png);}");ui->pushButton_navigation->setStyleSheet("QPushButton{border-image: url(:/Multimedia/Resources/MultifunctionDisplay/Multimedia/navigation_2.png);}""QPushButton:pressed{border-image: url(:/Multimedia/Resources/MultifunctionDisplay/Multimedia/navigation_1.png);}");ui->pushButton_radio->setStyleSheet("QPushButton{border-image: url(:/Multimedia/Resources/MultifunctionDisplay/Multimedia/radio.png);}""QPushButton:pressed{border-image: url(:/Multimedia/Resources/MultifunctionDisplay/Multimedia/radio_1.png);}");ui->pushButton_phone->setStyleSheet("QPushButton{border-image: url(:/Multimedia/Resources/MultifunctionDisplay/Multimedia/phone_2.png);}""QPushButton:pressed{border-image: url(:/Multimedia/Resources/MultifunctionDisplay/Multimedia/phone_1.png);}");
}void MFD_Radio::on_pushButton_menu_clicked()
{emit signal_returnToMenu();}void MFD_Radio::on_pushButton_navigation_clicked()
{emit signal_ToNavigation();
}void MFD_Radio::on_pushButton_multimedia_clicked()
{emit signal_ToMusic();
}void MFD_Radio::on_pushButton_radio_clicked()
{}void MFD_Radio::on_pushButton_phone_clicked()
{emit signal_ToPhone();
}void MFD_Radio::on_pushButton_return_clicked()
{emit signal_return();
}void MFD_Radio::on_pushButton_menubtn_clicked()
{if(ui->tabWidget_menu->isHidden()){ui->tabWidget_menu->show();ui->tabWidget_menu->setCurrentIndex(0);}elseui->tabWidget_menu->hide();
}void MFD_Radio::on_pushButton_am_clicked()
{ui->pushButton_am->setStyleSheet("QPushButton{border-image: url(:/Radio/Resources/MultifunctionDisplay/Radio/am.png);}""QPushButton:pressed{border-image: url(:/Radio/Resources/MultifunctionDisplay/Radio/am_1.png);}");ui->pushButton_fm->setStyleSheet("QPushButton{border-image: url(:/Radio/Resources/MultifunctionDisplay/Radio/fm_2.png);}""QPushButton:pressed{border-image: url(:/Radio/Resources/MultifunctionDisplay/Radio/fm_1.png);}");
}void MFD_Radio::on_pushButton_fm_clicked()
{ui->pushButton_am->setStyleSheet("QPushButton{border-image: url(:/Radio/Resources/MultifunctionDisplay/Radio/am_2.png);}""QPushButton:pressed{border-image: url(:/Radio/Resources/MultifunctionDisplay/Radio/am_1.png);}");ui->pushButton_fm->setStyleSheet("QPushButton{border-image: url(:/Radio/Resources/MultifunctionDisplay/Radio/fm.png);}""QPushButton:pressed{border-image: url(:/Radio/Resources/MultifunctionDisplay/Radio/fm_1.png);}");
}
今天就到这里了。
第三阶段成果展示
目前已完成液晶仪表三种模式的初步显示,小模块后期根据精力更新了,主要还得找美术来搞资源,自己能力不够。暂未跟新计划。展示如下:
基于Qt的汽车仪表模拟 3.0
B站链接:https://www.bilibili.com/video/BV1WS4y137y1/
第二阶段成果展示
目前以完成HUD界面及接口开发,液晶仪表舒适模式和运动模式的开发。展示如下:
基于Qt的汽车仪表模拟 2.0
B站链接:https://www.bilibili.com/video/BV1aq4y1t7H7/
第一阶段成果展示
目前以完成HUD界面及接口开发,液晶仪表舒适模式开发。展示如下:
基于Qt的汽车仪表模拟 1.0)
B站链接:https://www.bilibili.com/video/BV1qJ411X7Gs/
说明:
本项目中所使借鉴原型来自:[吉利] 博瑞GE | 仪表HMI设计、吉利汽车HMI项目。
多媒体部分是来自吉利博瑞2017旗舰版界面所有权和解释权都归吉利汽车所有。
设计图的所有权和解释权都归吉利汽车所有。
本项目所有资源文件均由**打不死的小海**复刻制作。
本项目代码暂时不会开源,有需要的源码的可与我联系,左上角二维码加微信。
本项目仅限学习交流、禁止商业使用。
HMI-57-【多媒体】收音机 1相关推荐
- HMI-64-【多媒体】Ui全部制作完成
HMI-64-[多媒体]Ui全部制作完成 文章目录 HMI-64-[多媒体]Ui全部制作完成 ☀前言 框架图 函数调用流程 ✍本文计划 ☢当前进度 ☯功能实现 1 菜单 3 空调 4 行车记录仪 5 ...
- HMI-63-【多媒体】空调部分 4
HMI-63-[多媒体]空调部分 4 文章目录 HMI-63-[多媒体]空调部分 4 ☀前言 框架图 函数调用流程 ✍本文计划 ☢当前进度 ☯功能实现 1 风向模块 1.1 头文件 1.2 源文件 2 ...
- 计算机基础知识中真值是什么,计算机基础知识(一)
计算机基础知识(一) (2009-11-05 10:23:34) 标签: 教师招聘 考试材料 计算机 基础知识 教育 一 选择题 1. 在下面关于计算机系统硬件的说法中,不正确的是_______. A ...
- 贴片电解电容_百度百科
原文地址::http://baike.baidu.com/view/6388810.htm?fr=aladdin 简介 2特点 3原理 4应用 5发展 6型号参数 7技术性能 8判断 9正负极 10寿 ...
- 如何阅读AUTOSAR官方文档
注: 本文首发于微信公众号"嵌入式软件实战派",关注获得更多内容. AUTOSAR有哪些标准文档 Classic Platform AUTOSAR Classic Platform ...
- HMI-59-【多媒体】收音机 2
其实文章更新到这里,我感觉当网友第一次看到这个文章的时候,应该是云里雾里的,但是目前我也没有一个很好的方法来展示当前的逻辑及进度,也没有逻辑,除了4大模块之外,好多东西将受限美术资源,硬件资源等,可能 ...
- 计算机多媒体思政课,浅论多媒体教学手段在思政课教学中的运用
2. 2提高教师多媒体课件的制作能力,是发挥多媒体教学技术作用的基础 目前,学校"思政课"教学中,计算机技术应用仍然是零散的.随机的,较多地取决于教师的主观意志和对课件制作技术的掌 ...
- Android多媒体开发
Android多媒体开发系列文章 Android多媒体开发:录音机 Android多媒体开发:照相机 TextureView+MediaPlayer实现在线短视频播放 Android多媒体开发:第三方 ...
- 京东云端到端多媒体关键技术揭秘
从带来更高编码效率.更好的用户体验的京享高清,到直播架构与网络演进优化,从而为用户带来更流畅的观看体验,以及运维系统的异常自动修复和高弹性的多媒体存储架构,一层一层展示出复杂而有序的多媒体技术框架.本 ...
最新文章
- 备战 ‘金三银四’ 必备超多软件测试面试题全在这里
- 详略。。设计模式1——单例。。。。studying
- Rainbow的相关资料
- python需要变量命名规则_和孩子一起学习python之变量命名规则
- HDU 3699 DFS
- CSS实现文本周围插入符号
- win7优化设置_5项优化,至少提升20%!
- python输入整数n计算并输出1+22+333_Python 经典练习题-016
- python xpath定位元素方法_python--通过xpath相对节点位置查找元素(续)
- LiteIDE调试工具delve
- linux如何配置自定义命令,[shell脚本]Linux自定义命令并启用应用
- Android中背景透明的Dialog
- Flex Builder 中视图状态
- 提升体验:为游戏添加声色
- 【dell电脑Windows10重启自动修复】重启之后一直修复,又重启(已解决)
- Oracle转换Postgres
- C/C++编程:#pragma once用法总结
- 宁银消费金融来了 母行授信80亿,全国急招人
- 杂谈:Perl6 树莓Pi Erlang win10 Clojure
- pygame战棋游戏制作之战棋地图绘制(一)