是让一个widget跟这你的鼠标移动吗?
如果是的话,解决方法是:
1. 声明
QPoint last;
QPoint pos;
为该widget的数据成员
2. 为该widget添加方法
void mousePressEvent(QMouseEvent *);
void mouseMoveEvent(QMouseEvent *);
3. 实现方法
void MyWidget::mousePressEvent(QMouseEvent *e)
{
if(e->buttons()==Qt::LeftButton)
{
last=e->globalPos();
pos=e->globalPos()-e->pos();
}
}
void MyWidget::mouseMoveEvent(QMouseEvent *e)
{
if(e->buttons() && Qt::LeftButton)
{
QPoint newpos = e->globalPos();
QPoint upleft = pos + newpos - last;
this->move(upleft);
}
}