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

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

相关推荐
阳光开朗男孩36 分钟前
FFmpeg从入门到精通-2.ffmpeg常用命令
ffmpeg
老王谈企服1 小时前
实在Agent智能体视频生成节点实战:多模型调度、Jinja模板与动态参数,打造自动化视频生产线
人工智能·自动化·音视频
MonkeyKing71551 小时前
iOS音频时钟、时钟同步与音频时间戳原理详解
ios·objective-c·音视频
ZC跨境爬虫2 小时前
跟着 MDN 学 HTML day_43:(DocumentFragment 接口详解)
前端·javascript·vue.js·ui·html·音视频
节点云科2 小时前
谷歌 Gemini Omni 深度解析:原生视频模型的技术突破与行业影响
人工智能·音视频
电子科技圈2 小时前
XMOS将亮相台北国际电脑展并演示其在边缘AI和创新音频与互联等领域内的新方案
人工智能·游戏·计算机视觉·视觉检测·音视频·语音识别·实时音视频
数据法师2 小时前
告别付费云端转写!Memo AI:一款部署在本地的无限次音视频转文字神器
人工智能·音视频
云天AI实战派2 小时前
2026 实战:用 OpenAI 实时音频模型做门店语音助手,从 Spec 到 API 接入上线全流程
microsoft·音视频·语音识别
MonkeyKing71552 小时前
iOS 音频硬件架构:采样率、位深、声道、音频缓冲区核心解析
ios·objective-c·音视频
Q_4582838682 小时前
基于 JTT1078MediaServer 的集群方案实践(Nginx + 溯源模式)轻量级车联网音视频集群
运维·服务器·nginx·架构·音视频·交通物流