带有QMediaPlaylist的播放列表在QT中
Playlist with QMediaPlaylist in QT
我的 QT 编写的播放列表有问题。
我有一个小函数来加载mp3文件,并使用以下代码在我的播放列表中打印这首歌的名称:
void MainWindow::on_addButton_clicked()
{
QString files = QFileDialog::getOpenFileName(this, tr("Open Files"), "QString()", tr("Audio Files (*.mp3)"));
qDebug() << player->errorString();
player->setMedia(QUrl::fromLocalFile(files));
player->setVolume(ui->volumeSlider->value());
on_playButton_clicked();
foreach (QString filePath, files) {
QList<QStandardItem*> items;
items.append(new QStandardItem(QDir(filePath).dirName()));
items.append(new QStandardItem(filePath));
playListModel->appendRow(items);
playlist->addMedia(QUrl(filePath));
}
}
使用此代码,我遇到了一个问题,即我的播放列表在 1 行中仅包含 1 个字母。当我将QString更改为QStringList(这将起作用)时,我收到一个错误:
error: conversion from ‘QString’ to non-scalar type ‘QStringList’ requested
QStringList files = QFileDialog::getOpenFileName(this, tr("Open Files"), "QString()", tr("Audio Files (*.mp3)"));
我如何更改它来解决我的问题?第二个问题是我得到带有歌曲名称的完整目录名称,我只想得到歌曲名称。
我会很高兴得到任何帮助。
使用 getOpenFileNames() 代替 getOpenFileName()
相关文章:
- Qt - QVector 和模型视图 - 从列表视图获取自定义类的最佳方法是什么?
- 测试驱动开发 c++:如何将对象添加到向量中,将歌曲添加到播放列表并对其进行测试
- 如何在Qt C++中获取所有可用主题的列表?
- Qt 图像列表
- 如何使用 c++ 模型填充播放列表 qml 类型
- 带有QMediaPlaylist的播放列表在QT中
- 通过QT播放mov-files
- 使用QT播放实时视频流
- 使用 C++ QT 创建列表视图
- Qt 当列表小部件项被单击两次时崩溃
- QMedia播放列表支持的格式
- 如何使用类将歌曲添加到播放列表程序中
- 连接的串行端口C Qt的列表
- QT C++-如何在播放列表处于活动状态的情况下打开Windows Media Player
- 用QT播放视频
- QListView或QListWidget中的Qt c++字体列表,并将它们表示为复选框
- 如何从一个特定的点(时间码)使用Qt播放声音
- Qt:在列表中查找对象的属性
- 媒体播放列表的数据结构
- 用Qt播放特定的系统声音