关于窗口移动的整理笔记

最近在写关于鼠标的mouseTracking 时 发现之前对不规则窗体的移动有些问题 于是重新对窗体的移动代码整理优化

先将功能函数添加如下 方便大家可以直接调用

cpp文件里添加如下

—————————————我是华丽的分界线————————————————

void MainWindow::mouseMoveEvent(QMouseEvent *e)

{

if (e->buttons() & Qt::LeftButton) {

QPoint newpos = e->globalPos();

QPoint upleft = pos0 + newpos - last;

move(upleft);

}

}

void MainWindow::mousePressEvent(QMouseEvent *e)

{

if (e->button() == Qt::LeftButton) {

last = e->globalPos();

pos0 = e->globalPos() - e->pos();

}

}

.h中添加如下

—————————————我是华丽的分界线————————————————

public:

QPoint last,pos0;//窗口移动处理

protected:

void changeEvent(QEvent *e);

void mouseMoveEvent(QMouseEvent *);

void mousePressEvent(QMouseEvent *);

#include "QMouseEvent"

你可能感兴趣的:(笔记)