Posted on 2010-12-06 22:40
RTY 阅读(910)
评论(0) 编辑 收藏 引用 所属分类:
Qt
QWidget *QWidget::window() const // 找到自己所属的窗体
{
QWidget *w = (QWidget *)this;
QWidget *p = w->parentWidget();
while (!w->isWindow() && p) {
w = p;
p = p->parentWidget();
}
return w;
}
inline bool QWidget::isWindow() const // 返回是否是窗体
{ return (windowType() & Qt::Window); }
QPoint QWidget::mapTo(QWidget * parent, const QPoint & pos) const //坐标映射
{
QPoint p = pos;
if (parent) {
const QWidget * w = this;
while (w != parent) {
Q_ASSERT_X(w, "QWidget::mapTo(QWidget *parent, const QPoint &pos)",
"parent must be in parent hierarchy");
p = w->mapToParent(p);
w = w->parentWidget();
}
}
return p;
}