背景:这是一个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);