// 鼠标点击事件
void Widget::mousePressEvent(QMouseEvent *event)
{
/*
event->pos()、event->windowPos()和event->localPos()都表示鼠标点击位置在窗口中的位置,
它们的值都是一样的,区别在于event->pos()是QPoint类型,event->windowPos()和event->localPos()
是QPointF类型。
*/
event->pos();
event->windowPos();
event->localPos();
/*
event->globalPos()和event->screenPos()都表示鼠标点击位置在电脑桌面的位置(电脑桌面左上角为原点),区别在于event->globalPos()是QPoint类型,event->screenPos()是QPointF类型。
*/
event->globalPos();
event->screenPos();
/*
窗口左上角(有标题栏时,以标题栏左上角为窗口左上角)在电脑桌面的位置
*/
this->pos();
}
值得注意的是event->pos()、event->windowPos()和event->localPos()用来获取鼠标光标在窗口内的当前位置,以窗口左上角为原点(是不包括标题栏的左上角)如下图所示: