背景:这是一个QWidget窗体,里面是各种布局的组合,一层套一层。
我希望得到绿色部分的坐标信息(x,y)
QPoint get_pos(QWidget* w, QWidget* parent)
{
if ((QWidget*)w->parent() == parent) {
return w->pos();
}
else {
QPoint pos(w->pos());
pos += get_pos((QWidget*)w->parent(), parent);
return pos;
}
}
假设
绿色窗体为w
最外面的窗体为m
get_pos(w,m);