Qt函数之一:QFileDialog::getOpenFileNames笔记

本文介绍了如何在Qt应用中通过QFileDialog获取用户选择的音乐文件,然后将这些文件的路径添加到QMediaPlaylist中,并显示在QListWidget中,以实现音乐播放功能。
摘要由CSDN通过智能技术生成

QStringList MP3files = QFileDialog::getOpenFileNames(this,"选择音乐文件","E:\\music","音乐文件 (*.mp3 *.mp4 *.MP3 *.ogg)");

for(int i =0;i<MP3files.count();i++)

{ MediaPlaylist->addMedia(QUrl(MP3files.at(i)));

ui->MediaplayListWidget->addItem(MP3files.at(i));}

这段代码是用来选择音乐文件并将其添加到播放列表中的。首先,通过调用QFileDialog::getOpenFileNames函数打开文件选择对话框,允许用户选择多个音乐文件。该函数的参数依次为:父窗口指针、对话框标题、默认打开的文件夹路径、文件过滤器。选择的音乐文件会以字符串列表的形式返回。

然后,通过一个循环遍历选择的音乐文件列表,将每个文件的路径转换为QUrl对象,并使用QMediaPlaylistaddMedia函数将其添加到播放列表中。同时,使用QListWidgetaddItem函数将文件路径显示在界面的播放列表控件中。

这样做的目的是为了实现选择多个音乐文件并将其添加到播放列表中,以便后续播放音乐。

QUrl

QUrl对象是Qt框架中用于处理URL的类。它提供了一种方便的方式来解析、构造和操作URL字符串。通过使用QUrl对象,可以轻松地获取URL的各个部分,如协议、主机、路径、查询参数等。同时,QUrl还提供了一些方法来处理URL的编码和解码,以及处理相对路径和绝对路径之间的转换。

#include <QUrl> #include <QDebug> int main() 
{ 
// 构造一个QUrl对象 
QUrl url("https://www.example.com/path?param1=value1&param2=value2"); // 获取URL的各个部分 
qDebug() << "Scheme: " << url.scheme(); // 输出:https 
qDebug() << "Host: " << url.host(); // 输出:www.example.com 
qDebug() << "Path: " << url.path(); // 输出:/path 
qDebug() << "Query: " << url.query(); // 输出:param1=value1&param2=value2 

// 修改URL的部分 
url.setScheme("http"); 
url.setHost("www.newexample.com"); 

// 将QUrl对象转化为URL字符串 
qDebug() << "URL: " << url.toString(); 
// 输出:http://www.newexample.com/path?param1=value1&param2=value2 return 0; }
  • 11
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值