`
ydbc
  • 浏览: 719036 次
  • 性别: Icon_minigender_1
  • 来自: 大连
文章分类
社区版块
存档分类
最新评论

关于窗口移动的整理笔记

 
阅读更多

最近在写关于鼠标的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"

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics