如何将媒体文件添加到QMediaPlaylist? 我是QT和C++初学者,制作了一个媒体播放器。我只想使用QMediaplaylist类创建一个播放列表

如何将媒体文件添加到QMediaPlaylist? 我是QT和C++初学者,制作了一个媒体播放器。我只想使用QMediaplaylist类创建一个播放列表,c++,qt,C++,Qt,我只是想要它,这样当我点击一个图标时,它会弹出一个窗口,我可以在其中选择多个视频文件,并将这些文件附加到QMediaplaylist中 我已经完成了多重选择部分。但我无法解决如何使用QMediaPlaylist附加这些文件 playlist = new QMediaPlaylist(player); QStringList filenames = QFileDialog::getOpenFileNames(this,"Open a File","",&qu

我只是想要它,这样当我点击一个图标时,它会弹出一个窗口,我可以在其中选择多个视频文件,并将这些文件附加到QMediaplaylist中

我已经完成了多重选择部分。但我无法解决如何使用QMediaPlaylist附加这些文件

playlist = new QMediaPlaylist(player);
QStringList filenames = QFileDialog::getOpenFileNames(this,"Open a File","","Video File(*.*)");
playlist->addMedia(filenames); //error has occurred in this line 
player->setPlaylist(playlist);
on_actionPlay_triggered();
语义问题

  error:no matching member function for call to 'addMedia"
  qmediaplaylist.h:90:10:note:candidate function not viable:no known 
  conversion from 'QStringList' to const QMediaContent' for 1st argument 

  qmediaplaylist.h:91:10:note:candidate function not viable:no known 
  conversion from 'QStringList' to 'const QList<QMediaContent>'for 1st 
  argument 
错误:调用“addMedia”时没有匹配的成员函数
qmediaplaylist.h:90:10:注意:候选函数不可行:未知
第一个参数从'QStringList'到常数QMediaContent'的转换
qmediaplaylist.h:91:10:注意:候选函数不可行:未知
第一次从“QStringList”转换为“const QList”
论点

您必须使用
quorl::fromLocalFile()转换
QMediaContent
中的每个路径:

playlist = new QMediaPlaylist(player);
QStringList filenames = QFileDialog::getOpenFileNames(this, "Open a File","","Video File(*.*)");
for(const QString & filename: filenames){
    playlist->addMedia(QMediaContent(QUrl::fromLocalFile(filename)));
}
player->setPlaylist(playlist);