第一次写博客,分享一下最近用Qt5做的一个简单的音乐播放器。
Qt版本:Qt 5.7.0
界面比较粗糙,但是音乐播放器的一些相关基本功能还是有的。
话不多说,先上个图。
闲着无聊加了个托盘图标功能,能够最小化到托盘系统,后台播放音乐。
界面大家一目了然,歌曲列表用的tableWidget控件,其他的都是一些常用的。
歌曲播放是使用Qt自带的QMediaPlayer类。
/* 加载本地歌曲,filepath为带路径文件名 */
mediaPlayer->setMedia(QUrl::fromLocalFile(filepath));
mediaPlayer->play(); //开始播放歌曲
mediaPlayer->pause(); //暂停播放
mediaPlayer->stop(); //停止播放
/* 调用标准对话框获取音乐目录 */
QString music_path = QFileDialog::getExistingDirectory(NULL, tr("选择文件夹"),"./",QFileDialog::ShowDirsOnly);
dir = new QDir(music_path);
QStringList filter;<<"*.mp3";
dir->setNameFilters(filter);
QList<QFileInfo> *fileInfo = new QList<QFileInfo>(dir->entryInfoList(filter));
for(int i = 0; i < fileInfo->count(); i++)
{
ui->tableWidget->setItem(0,i,new QTableWidgetItem(fileInfo->at(i).fileName()));
}
/*使用如上方式将歌曲加载到列表中*/
/* 然后,这些是我的一些信号与槽的连接 */
connect(ui->horizontalSlider,SIGNAL(valueChanged(int)),this,SLOT(setPosition(int)));
connect(mediaPlayer,SIGNAL(positionChanged(qint64)), this, SLOT(updatePosition(qint64)));
connect(mediaPlayer,SIGNAL(durationChanged(qint64)), this, SLOT(updateDuration(qint64)));
具体功能参考源代码: http://download.csdn.net/detail/fangye945a/9808855