在main中:
w.setWindowFlags(Qt::FramelessWindowHint);//去掉标题栏;
在*.h中:
QPoint windowPos,mousePos,dPos;
在*.cpp:
void yourwindow::mousePressEvent(QMouseEvent *event)
{
this->windowPos = this->pos(); // pos()是相对于窗口的,以窗口左上角为原点(去除边框)。即pos()给出的是一个相对位置坐标。而globalPos(),给出的是一个绝对坐标。
this->mousePos = event->globalPos(); // globalpos()给出的坐标信息是相对于桌面的,即以桌面左上角为原点
this->dPos = mousePos - windowPos;
}
void yourwindow::mouseMoveEvent(QMouseEvent *event)
{
this->move(event->globalPos() - this->dPos);
}