FFmpeg开发(九)——Qt视频播放器之快进滑动条(参考了暴风影音、迅雷影音)

17 篇文章 4 订阅
11 篇文章 17 订阅

FFmpeg开发(九)——Qt视频播放器之快进滑动条(参考了暴风影音、迅雷影音)

上一篇介绍了使用多线程

FFmpeg开发(八)——Qt视频播放器之多线程的使用(参考了暴风影音、迅雷影音)

本播放器系列相关的文章链接大家可以参考如下:

FFmpeg开发(四)——Qt实现一个视频播放器(参考了暴风影音、迅雷影音)

FFmpeg开发(五)——Qt视频播放器之封装FFmpeg类(参考了暴风影音、迅雷影音)

FFmpeg开发(六)——Qt视频播放器之封装音频类(参考了暴风影音、迅雷影音)

FFmpeg开发(七)——Qt视频播放器之播放列表类(参考了暴风影音、迅雷影音)

FFmpeg开发(八)——Qt视频播放器之多线程的使用(参考了暴风影音、迅雷影音)

FFmpeg开发(九)——Qt视频播放器之快进滑动条(参考了暴风影音、迅雷影音)

实现的额效果如下:

本篇写一下滑动条的实现,播放快进滑动条和音量控制滑动条都是重写了QSlider类,主要就是对QSlider进行QSS美化。

#include <QObject>
#include <QWidget>
#include <QSlider>
#include <QMouseEvent>

class MidPlaySlider : public QSlider
{
    Q_OBJECT
public:
    MidPlaySlider(QWidget *parent = 0);
    ~MidPlaySlider();

protected:
    void mousePressEvent(QMouseEvent *ev);//鼠标按下事件

private:
    void initData();

private:

};
#include "midplayslider.h"

MidPlaySlider::MidPlaySlider(QWidget *parent):QSlider(parent)
{
    initData();
}

MidPlaySlider::~MidPlaySlider()
{

}

//鼠标按下事件
void MidPlaySlider::mousePressEvent(QMouseEvent *ev)
{
    double pos = (double)ev->pos().x() / (double)width();//当前鼠标位置比率
    setValue(pos*this->maximum());//设置位置
    QSlider::mousePressEvent(ev);
}


void MidPlaySlider::initData()
{
    setOrientation(Qt::Horizontal);
    //setFixedHeight(15);

    setStyleSheet(
    "QSlider{background-color: transparent;}"
    "QSlider::groove:horizontal {border: 0px solid #09A1FF;\
    background: #09A1FF;\
    height: 3px;\
    border-radius: 6px;\
    padding-left:0px;\
    padding-right:0px;\
    left:1px;right:0px;\
    }"
    "QSlider::sub-page:horizontal {\
    background: #09A1FF;\
    border: 1px solid #09A1FF;\
    height: 3px;\
    border-radius: 3px;\
    }"
    "QSlider::add-page:horizontal {\
    background: #696969;\
    border: 0px solid #696969;\
    height: 3px;\
    border-radius: 3px;\
    }"
    "QSlider::handle:horizontal {\
    background:#FFFFFF;\
    width: 12px;height 12px;\
    margin-top: -5px;\
    margin-bottom: -5px;\
    border-radius: 6px;\
    }");

}

下一篇文章:

FFmpeg开发(十)——Qt 实现FFmpeg下载m3u8视频

本文原创作者:冯一川(ifeng12358@163.com),未经作者授权同意,请勿转载。

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

冯一川

谢谢老板对我的支持!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值