by tangke <> 2009-06-08
Qt窗口移动代码,该代码可以应用在很多地方,当用户点击窗口并且拖动的时候,该widget会实时的移动到鼠标的位置。
// "offset" is a member variable of type QPoint
void MyWidget::mousePressEvent(QMouseEvent* event)
{
event->accept(); // do not propagate
if (isWindow())
offset = event->globalPos() - pos();
else
offset = event->pos();
}
void MyWidget::mouseMoveEvent(QMouseEvent* event)
{
event->accept(); // do not propagate
if (isWindow())
move(event->globalPos() - offset);
else
move(mapToParent(event->pos() - offset));
}
void MyWidget::mouseReleaseEvent(QMouseEvent* event)
{
event->accept(); // do not propagate
offset = QPoint();
}
阅读(202) | 评论(0) | 转发(0) |