Skip to content
This repository has been archived by the owner on May 19, 2022. It is now read-only.

Commit

Permalink
V2.0
Browse files Browse the repository at this point in the history
More details are in the README.txt
  • Loading branch information
BackMountainDevil authored Mar 15, 2020
1 parent 7b67d9a commit bd854c7
Show file tree
Hide file tree
Showing 19 changed files with 972 additions and 0 deletions.
43 changes: 43 additions & 0 deletions source/MiniMusicPlayer 2/10-Multimedia.pro
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
QT += core gui multimedia

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

CONFIG += c++11

# The following define makes your compiler emit warnings if you use
# any Qt feature that has been marked deprecated (the exact warnings
# depend on your compiler). Please consult the documentation of the
# deprecated API in order to know how to port your code away from it.
DEFINES += QT_DEPRECATED_WARNINGS

# You can also make your code fail to compile if it uses deprecated APIs.
# In order to do so, uncomment the following line.
# You can also select to disable deprecated APIs only up to a certain version of Qt.
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0

SOURCES += \
listwidget.cpp \
main.cpp \
mainwindow.cpp

HEADERS += \
listwidget.h \
mainwindow.h

FORMS += \
listwidget.ui \
mainwindow.ui

TRANSLATIONS += \
10-Multimedia_zh_CN.ts

# Default rules for deployment.
qnx: target.path = /tmp/$${TARGET}/bin
else: unix:!android: target.path = /opt/$${TARGET}/bin
!isEmpty(target.path): INSTALLS += target

RESOURCES += \
res.qrc

#添加程序默认图标
RC_ICONS = ico.ico
272 changes: 272 additions & 0 deletions source/MiniMusicPlayer 2/10-Multimedia.pro.user

Large diffs are not rendered by default.

3 changes: 3 additions & 0 deletions source/MiniMusicPlayer 2/10-Multimedia_zh_CN.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="10-Multimedia_zh_CN"></TS>
73 changes: 73 additions & 0 deletions source/MiniMusicPlayer 2/README.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
介绍:
一款简易的绿色音乐播放器,无需安装,用完即走,不留痕迹。
使用说明:
从左至右三个按纽分别为 选择文件、播放/暂停、查看/隐藏歌单,将鼠标停留在按钮上会显示提示。
1.添加音乐文件:点击选择文件按钮进行单个或多个选择即可,也可以直接拖放文件到软件窗口中自动识别添加文件,添加完成后会自动循环播放刚才添加的音乐;
2.调节音量:将鼠标停留在播放器界面时,滚动鼠标滚轮即可调节音量,默认70%的音量。
3.暂停播放:点击暂停按钮可以暂停播放,再次点击可恢复播放
4.点击歌单按钮可以查看播放列表
5.退出:点击右上角关闭按钮(“ X ”)

资源
工程文件源码在source文件夹,可以下载用Qt打开编辑
安装包在release文件夹,采用windeployqt+Enigma Virtual Box 发布
V2.0 25.5M不能上传到Github,资源链接
https://www.jianguoyun.com/p/DSzZOZUQkLOaCBjh-_QC (访问密码:ybiV0Y)

开发环境
Qt Creator 4.11.1 + Qt 5.14.1 (MSVC 2017, 32 bit)

状态
2020.3.14 V1.0 完成
若图片加载失败,可访问我的博客查看:
https://zhuanlan.zhihu.com/p/113188097
2020.3.16 V2.0 完成
V1.0新增需求文档
1.支持播放mp3、wav格式的音频;
2.可以选择要播放的本地音频;
3.支持暂停和重新开始播放;
V2.0新增需求文档
界面ui设计
增加可隐藏的播放列表
支持拖动添加多个文件并筛选掉不符合格式的文件
选取文件对话框增加支持的格式mpga
支持一次选取多个音乐文件,播放完后自动播放下一曲
增加音量通过鼠标调节功能,默认音量70%,滚一次变化5%
V2.0已攻克bug
播放完成后按钮状态修正
从从暂停的位置恢复播放而不是从头播放
再次添加文件会从头播放修正为继续当前的播放
V3.0新增需求文档
添加到系统托盘图标,有关闭后最小化到系统托盘的选项
重置播放器功能(情况列表和歌单)
增加通过歌单切歌和按钮切歌
增加单曲循环、列表循环、随机播放
播放进度条
歌单窗口大小跟随
文件名识别更准确


协议
遵守GNU GPL v3.0协议

Introduction
An light MusicPlayer
Contact with E-mail: kearneyback@gmail.com


Status
2020.3.14 V1.0 released


Installtion
V2.0:
https://www.jianguoyun.com/p/DSzZOZUQkLOaCBjh-_QC
(Password:ybiV0Y) by 2021.3.16

Resources
You can get the source code from this website:


License
This package is released under GNU General Public License v3.0(https://opensource.org/licenses/LGPL-3.0)

Binary file added source/MiniMusicPlayer 2/ico.ico
Binary file not shown.
Binary file added source/MiniMusicPlayer 2/img/file.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added source/MiniMusicPlayer 2/img/ico.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added source/MiniMusicPlayer 2/img/list.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added source/MiniMusicPlayer 2/img/pause.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added source/MiniMusicPlayer 2/img/play.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added source/MiniMusicPlayer 2/img/reset.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
23 changes: 23 additions & 0 deletions source/MiniMusicPlayer 2/listwidget.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
#include "listwidget.h"
#include "ui_listwidget.h"

ListWidget::ListWidget(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::ListWidget)
{
ui->setupUi(this);
this->setWindowFlag(Qt::FramelessWindowHint);
//this->ui->plainTextEdit->setSizeIncrement(10,10);
}

ListWidget::~ListWidget()
{
delete ui;
}

void ListWidget::additem(QString str)
{

ui->listWidget->addItem(str);

}
23 changes: 23 additions & 0 deletions source/MiniMusicPlayer 2/listwidget.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
#ifndef LISTWIDGET_H
#define LISTWIDGET_H

#include <QMainWindow>
#include <QMediaPlayer>
namespace Ui {
class ListWidget;
}

class ListWidget : public QMainWindow
{
Q_OBJECT

public:
explicit ListWidget(QWidget *parent = nullptr);
~ListWidget();
void additem(QString str); //将歌曲添加到默认歌单

private:
Ui::ListWidget *ui;
};

#endif // LISTWIDGET_H
82 changes: 82 additions & 0 deletions source/MiniMusicPlayer 2/listwidget.ui
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>ListWidget</class>
<widget class="QMainWindow" name="ListWidget">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>243</width>
<height>337</height>
</rect>
</property>
<property name="windowTitle">
<string>播放列表</string>
</property>
<widget class="QWidget" name="centralwidget">
<layout class="QVBoxLayout" name="verticalLayout">
<item>
<widget class="QTabWidget" name="tabWidget">
<property name="currentIndex">
<number>0</number>
</property>
<widget class="QWidget" name="tab">
<attribute name="title">
<string>默认歌单</string>
</attribute>
<layout class="QHBoxLayout" name="horizontalLayout">
<item>
<widget class="QListWidget" name="listWidget"/>
</item>
</layout>
</widget>
<widget class="QWidget" name="tab_2">
<property name="enabled">
<bool>true</bool>
</property>
<attribute name="title">
<string>说明</string>
</attribute>
<widget class="QPlainTextEdit" name="plainTextEdit">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>191</width>
<height>281</height>
</rect>
</property>
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="readOnly">
<bool>true</bool>
</property>
<property name="plainText">
<string>介绍:
一款简易的绿色音乐播放器,无需安装,用完即走,不留痕迹。
使用说明:
从左至右三个按纽分别为 选择文件、播放/暂停、查看/隐藏歌单,将鼠标停留在按钮上会显示提示。
1.添加音乐文件:点击选择文件按钮进行单个或多个选择即可,也可以直接拖放文件到软件窗口中自动识别添加文件,添加完成后会自动循环播放刚才添加的音乐;
2.调节音量:将鼠标停留在播放器界面时,滚动鼠标滚轮即可调节音量,默认70%的音量。
3.暂停播放:点击暂停按钮可以暂停播放,再次点击可恢复播放
4.点击歌单按钮可以查看播放列表
5.退出:点击右上角关闭按钮(“ X ”)

使用过程中有任何问题或建议请发邮件到我下方的邮箱,说不定下次更新你就上榜了哟。
Contact with E-mail:
kearneyback@gmail.com</string>
</property>
</widget>
</widget>
</widget>
</item>
</layout>
</widget>
</widget>
<resources/>
<connections/>
</ui>
11 changes: 11 additions & 0 deletions source/MiniMusicPlayer 2/main.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
#include "mainwindow.h"

#include <QApplication>

int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MainWindow w;
w.show();
return a.exec();
}
Loading

0 comments on commit bd854c7

Please sign in to comment.