多路h265监控录放开发-(1)建立head窗口并实现鼠标拖动整个窗口

头文件:

cpp 复制代码
 //鼠标事件 用于拖动窗口
    //一下三个函数都是QWidget的可重载成员函数
    void mouseMoveEvent(QMouseEvent* ev) override;
    void mousePressEvent(QMouseEvent* ev) override;
    void mouseReleaseEvent(QMouseEvent* ev) override;

源文件:

cpp 复制代码
/
/// 鼠标拖动窗口

static bool mouse_press = false;
static QPoint mouse_point;//鼠标的坐标
void XViewer::mouseMoveEvent(QMouseEvent* ev)
{
    if (!mouse_press)
    {
        QWidget::mouseMoveEvent(ev);
        return;
    }
    this->move(ev->globalPos() - mouse_point);//鼠标在移动的过程中执行

}
void XViewer::mousePressEvent(QMouseEvent* ev)
{
    if (ev->button() == Qt::LeftButton)//左键按下的时候
    {
        mouse_press = true;//此时可移动
        mouse_point = ev->pos();
    }
}
void XViewer::mouseReleaseEvent(QMouseEvent* ev)
{
    mouse_press = false;
}

结果表明我们可以进行移动窗口了

相关推荐
马剑威(威哥爱编程)5 小时前
鸿蒙6开发视频播放器的屏幕方向适配问题
java·音视频·harmonyos
潇湘秦8 小时前
一次微小的CPU波动,你能查到什么?
ffmpeg
万能的小裴同学9 小时前
Android M3U8视频播放器
android·音视频
音视频牛哥9 小时前
轻量级RTSP服务的工程化设计与应用:从移动端到边缘设备的实时媒体架构
人工智能·计算机视觉·音视频·音视频开发·rtsp播放器·安卓rtsp服务器·安卓实现ipc功能
❀͜͡傀儡师9 小时前
Docker部署视频下载器
docker·容器·音视频
O***P57110 小时前
从MySQL5.7平滑升级到MySQL8.0的最佳实践分享
ffmpeg
EasyDSS13 小时前
视频推流平台EasyDSS无人机推流技术打造大型安保巡逻监控新模式
音视频·无人机
2501_9071368214 小时前
开源视频批量处理工具FFmpeg Batch AV Converter
ffmpeg·音视频·软件需求
EasyCVR14 小时前
从“看不见”到“看得清”:视频融合平台EasyCVR远程监控技术在沙尘暴交通监控中的应用
音视频
七牛云行业应用16 小时前
解决 AI 视频角色闪烁与时长限制:基于即梦/可灵的多模型 Pipeline 实战
人工智能·音视频·ai视频