首先第一步,则是在pro文件中QT += core gui后添加:multimediawidgets multimedia
第二步:代码实现
#include "widget.h"
#include <QApplication>
#include <QWidget>
#include <QVBoxLayout>
#include <QPushButton>
#include <QMediaPlayer>
#include <QVideoWidget>
#include <QFileDialog>
int main(int argc, char *argv[]) {
QApplication app(argc, argv);
// 创建主窗口
QWidget *window = new QWidget();
window->setWindowTitle("视频播放器");
// 创建布局
QVBoxLayout *layout = new QVBoxLayout(window);
// 创建视频播放器和视频窗口
QMediaPlayer *player = new QMediaPlayer();
QVideoWidget *videoWidget = new QVideoWidget();
// 设置视频输出
player->setVideoOutput(videoWidget);
// 添加视频窗口到布局
layout->addWidget(videoWidget);
// 创建播放按钮
QPushButton *playButton = new QPushButton("播放视频");
layout->addWidget(playButton);
// 连接按钮点击信号到播放视频
QObject::connect(playButton, &QPushButton::clicked, [=]() {
QString fileName = QFileDialog::getOpenFileName(window, "打开视频文件", "", "Video Files (*.mp4 *.avi *.mov);;All Files (*)");
if (!fileName.isEmpty()) {
player->setMedia(QUrl::fromLocalFile(fileName));
player->play();
}
});
window->setLayout(layout);
window->resize(800, 600);
window->show();
return app.exec();
}
目前只能打开mp4,avi,mov等文件,下载几个视频可以去试试吧
仅供参考学习
1912

被折叠的 条评论
为什么被折叠?



