zoukankan      html  css  js  c++  java
  • QT5:C++实现基于Multimedia的音乐播放器(序)

    前段时间C++课设,决定做个播放器,于是参考了网上的代码后,做了个很简陋的音乐播放器(只写了MP3格式)出来,虽然功能甚少,但还是决定把过程记录一下。

    成品如下图:

    播放器功能:

    • 上、下一首,音量控制
    • 单曲和列表循环、随机播放模式
    • 添加歌曲(因为懒,连删除歌曲都没写)

    所用技术:QT5,C++

    整个程序继承QT的QWidget完成,界面用qss修饰(qss的语法和CSS几乎一模一样),整个播放器主要靠QT的multimedia来完成音乐解码和播放。QMediaplayer用于解析音频文件,QMediaPlaylist作为一个媒体播放列表,保存媒体的路径(没有写数据库来保存歌曲,只是读取本地路径),这个类也自带了播放模式。

    QMediaPlaylist作为一个媒体播放列表,保存媒体的路径。

    *    此类有一个函数,void setPlaybackMode(PlaybackMode mode),

    *    而enum PlaybackMode { CurrentItemOnce, CurrentItemInLoop, Sequential, Loop, Random }

    *    分别为播放一次,单循环,顺序,列表循环,随机播放。

    按钮用QPushButton创建,加载外部资源通过qss来装饰按钮外观。

    音量和音乐进度条用QSlider创建,音乐进度时间则是用QLabel(可以放置图片,文字等内容的一个类)和QTimer(定时器)来完成。

    图片上的歌曲播放列表用QListWidget创建,通过QFileInfo分割本地路径获取歌名。本来想重写鼠标右键函数来添加、删除、播放歌曲的,但最终因为懒,没写

    最后放上播放器代码

  • 相关阅读:
    Head First Servlets & JSP 学习笔记 第七章 —— 作为JSP
    Head First Servlets & JSP 学习笔记 第六章 —— 会话状态
    八大基本排序--基数排序
    Stack类常用api
    3.从尾到头打印链表
    八大基本排序--归并排序
    八大基本排序--选择排序
    八大基本排序--希尔排序
    八大基本排序--插入排序
    八大基本排序--冒泡排序
  • 原文地址:https://www.cnblogs.com/guolao/p/8906708.html
Copyright © 2011-2022 走看看