Qt仿音乐播放器:QFileDialog添加本地文件

一、套路

QFileDialog fileDialog(this);// 创建对话框,并设置父元素;

fileDialog.setWindowTitle("添加本地下载的音乐");//设置窗口标题
    
//设置文件对话框的默认打开路径
QString projectPath=QDir::currentPath();//获取当前目录
QDir dir(projectPath);  //建立目录变量
dir.cdUp();     //向上跳一步;
projectPath = dir.path();
projectPath+="/MiniMusic/musics";    //再次改变目录,直接找到放音乐的目录下
fileDialog.setDirectory(projectPath);//给QFileDialog设置打开目录路径

//设置一次打开多个文件
fileDialog.setFileMode(QFileDialog::ExistingFiles);//设置可以一次打开多个文件;默认是一次打开一个;

//加过滤器,只显示特定的文件
//通过文件后缀的方式进行设置;多个后缀之间用空格或逗号隔开
//fileDialog.setNameFilter("代码文件(*.h *.c *.hpp)");
//fileDialog.setNameFilter("图片文件(*.png *.bmp *.svg)");


if(QDialog::Accepted ==fileDialog.exec())//.exec()在关闭时会有返回值,通过返回值来判断是否执                        
                                          行以下程序;
{
   //将获取的路径导出来;
   QList<QUrl> fileUrls = fileDialog.selectedUrls();
    ......
    ......
}

此时的本地文件是本地文件的路径;保存在fileUrls中;如果想操作,就要用到媒体类;获取路径信息,解析文件;下面的省略号,代码如果写,就会显得太杂且全是函数调用。

相关推荐
找了一圈尾巴13 分钟前
Wend看源码-Java-Collections 工具集学习
java·开发语言·学习
Ai 编码助手2 小时前
Go 语言 API 限流实战:保障系统稳定性的护盾
开发语言·后端·golang
玩大数据的龙威3 小时前
【ArcGIS Pro】完整的nc文件整理表格模型构建流程及工具练习数据分享
开发语言·python
唐棣棣4 小时前
期末速成C++【知识点汇总完】
开发语言·c++
yannan201903135 小时前
【数据结构】(Python)差分数组。差分数组与树状数组结合
开发语言·python·算法
WongKyunban6 小时前
Bash Shell知识合集
开发语言·chrome·bash
起个随便的昵称7 小时前
安卓入门一 Java基础
android·java·开发语言
重剑无锋10247 小时前
python实现自动登录12306抢票 -- selenium
开发语言·python·selenium
爱干饭的boy7 小时前
教师管理系统
java·开发语言·c++·windows·python·青少年编程
shinelord明7 小时前
【再谈设计模式】策略模式 ~ 算法与行为的灵活调度员
开发语言·数据结构·算法·设计模式·数据分析·软件工程