在MainWindow类的定义中,您需要将以下行添加到公共部分:
public slots:
void OnSetMediaFile(); // 载入
void OnSlider(qint64); // 信号内容的位置已更改为位置,以毫秒表示,进度条也要变
void OnDurationChanged(qint64); // 信号表示内容的持续时间已更改为时长,以毫秒表示,进度条 的最大值和最小值
void OnStateChanged(QMediaPlayer::State); // Player对象的状态已经改变
void handleTimeout();
这些是您稍后实现的槽函数。
此外,在私有部分中声明以下成员变量:
QTimer *timer;
QMediaPlaylist *playlist; // 声明QMediaPlaylist成员变量
QVideoWidget *m_pPlayerWidget;// 视频显示组件
QMediaPlayer * m_pPlayer;//媒体播放器类
QStringList playHistory; // 声明历史播放记录变量
bool m_bReLoad;// 已经载入还没设置进度条最大值
bool isPlaying = false;
这些变量将存储与视频播放相关的信息和状态。
最后,请确保在mainwindow.h文件顶部包含必要的头文件:
#include <QMainWindow>
#include <QMediaPlayer>
#include <QVideoWidget>
#include <QPushButton>
#include <QSlider>
#include <QLabel>
#include <QWidget>
#include <QtMultimedia>
#include "logwidget.h"
#include "playerslider.h"
#include <QMediaPlaylist>