多路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;
}

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

相关推荐
FrameNotWork9 小时前
HarmonyOS 6.1 云应用客户端适配实战(二):Native Window 视频渲染
华为·音视频·harmonyos
2023自学中9 小时前
imx6ull 开发板 推流ov5640数据,虚拟机用 ffplay 拉流播放
linux·音视频·嵌入式·开发板
天天进步20159 小时前
Python全栈项目--基于深度学习的视频目标跟踪系统
python·深度学习·音视频
EasyDSS11 小时前
私有化音视频系统/视频高清直播点播EasyDSS重塑企业视频门户新生态
音视频
byte轻骑兵12 小时前
【LE Audio】CAP精讲[13]: Central侧LE连接建立全流程解析
人工智能·音视频·cap·le audio·低功耗音频
EasyDSS12 小时前
视频直播点播/音视频点播/云点播/云直播EasyDSS一体化音视频平台赋能企业数字化转型
音视频
俊哥工具15 小时前
电脑怎么玩手机APP?超简单新手教程
pdf·电脑·word·excel·音视频
FrameNotWork15 小时前
HarmonyOS 6.1 云应用客户端适配实战(五):日志调试与问题排查
华为·音视频·harmonyos
2501_9422792518 小时前
视频转文字听不清、整理慢如何高效解决?
音视频
码农阿强19 小时前
PixVerse 全系列视频生成模型技术架构详解 + Python 基于 StartAPI.top 接口实战调用
python·ai·架构·音视频·ai编程