Qt实现车载多媒体项目,包含天气、音乐、视频、地图、五子棋功能模块,免费下载源文件!

本文主要介绍项目,项目的结构,项目如何配置,项目如何打包。这篇文章如果对你有帮助请点赞和收藏,谢谢!源代码仅供学习使用,如果转载文章请标明出处!(免费下载源代码)(免费下载exe

1.项目介绍

1.1主界面

主界面展示当前时间日期,并且包含天气、音乐、视频、地图、图片、五子棋等应用,点击后跳转到相应界面。浏览器还未实现,感兴趣的读者可以尝试实现。

1.2天气

天气界面同样有当前时间展示,会在左上边对今天的天气信息做出展示,点击刷新图标即可刷新天气,天气界面下边会展示7天的天气信息,会把当天的天气高亮显示。

1.3音乐

音乐界面本地列表可以手动添加音乐,如果已添加会弹出警告框。在播放时会在右侧展示歌词,拖动进度条可以控制音乐的进度,声音大小可以通过声音进度条控制,或者点击声音图标直接静音。在线列表由于需要提供接口,所以我是直接在本地nginx里编写json文件操作的。

1.4视频

视频界面跟音乐界面功能差不多,这里就不介绍了。只是多了一个全屏操作。

1.5地图

地图界面支持显示当前位置,可以放大地图,缩小地图,定当前位置,同时支持拖拽地图。这里获取路线感兴趣的读者可以尝试一下。

1.6图片

图片界面可以通过点击"文件"按钮添加单张或多张图片进行展示,同时实现了上一张、下一张、放大、缩小、左旋、右旋、删除等功能。

1.7五子棋

五子棋是黑白双方对战的形式,右侧会对当前回合玩家进行展示,五子棋实现了悔棋、求和、认输、重新开始等功能。

2.项目结构

这是用QTCreator打开看到的项目结构。以下已经标注出了文件是什么。

3.项目配置

3.1根据缺失模块补充

本项目是用Qt 6.9.0(MinGW 13.1.0 64-bit)编译。用到了很多模块,如果你没下载,可以先进入qt的安装目录 然后可以看到MaintenanceTool.exe。接着右键在终端中打开。

然后执行 .\MaintenanceTool.exe --mirror https://mirrors.aliyun.com/qt/ 这条命令。(这条命令是打开维护工具,然后用镜像源下载,这样速度更快)

3.2修改common.h

请修改common.h里边的配置,更换api的id和key。 写了许多注释应该可以看懂的

3.3添加音乐和视频做测试

如果你项目运行成功了,点击添加本地音乐文件如果打开一个空文件夹,可以将项目下的music文件下的歌曲和歌词拷到那个空文件夹下。视频同样在项目下有个video文件夹。这是我备份用来做测试的。

3.4打开nginx.exe加载在线列表

启动项目下的nginx。确保在点击在线列表是能获取到数据。当然不添加也不影响程序的运行。

4.项目打包

如果你对项目做了一些更改,或者你正棘手怎么打包项目,让你的好朋友在没有QT环境的情况下查看你的项目,你就需要对项目进行打包。以下是打包操作:

4.1用Release构建你的项目

4.2把构建文件中exe拿出来

新建一个文件夹(我取的名字是_release),将构建文件中exe放到新建的文件夹中。

4.3执行windeployqt命令

找到你的编译工具的这个终端用管理员身份运行

切换到exe所在目录下,然后执行windeployqt命令。

4.4不依赖QT环境直接运行

4.5其他(更换exe的图标)

如果你打包发现你的exe没有好看的图标,你可以按照下面的方法来做:

1.准备 .ico 图标文件。使用在线工具(如 Convertio)将 .png.jpg 图片转换为 .ico 格式。

2.将 .ico 文件放入项目目录。将生成的 .ico 文件(例如 logo.ico)放在项目的根目录,即 .pro 文件所在的目录。

3.修改 .pro 文件。在 .pro 文件中添加以下行:

RC_ICONS = logo.ico

这将指定编译器在生成 .exe 文件时使用该图标。

4.重新构建项目。保存 .pro 文件后,重新运行 qmake 并构建项目。生成的 .exe 文件将包含指定的图标。

相关推荐
TPBoreas37 分钟前
Jenkins 改完端口号启动不起来了
java·开发语言
TE-茶叶蛋44 分钟前
Vuerouter 的底层实现原理
开发语言·javascript·ecmascript
云闲不收2 小时前
设计模式原则
开发语言
秋名RG2 小时前
深入解析建造者模式(Builder Pattern)——以Java实现复杂对象构建的艺术
java·开发语言·建造者模式
技术求索者2 小时前
c++学习
开发语言·c++·学习
山猪打不过家猪3 小时前
(二)毛子整洁架构(CQRS/Dapper/领域事件处理器/垂直切片)
开发语言·.net
方博士AI机器人5 小时前
Python 3.x 内置装饰器 (4) - @dataclass
开发语言·python
weixin_376934635 小时前
JDK Version Manager (JVMS)
java·开发语言
Logintern095 小时前
【每天学习一点点】使用Python的pathlib模块分割文件路径
开发语言·python·学习
cykaw25905 小时前
QT 文件选择对话框 QFileDialog
开发语言·qt