setWindowFlags(Qt::FramelessWindowHint);
setGeometry(0, 0, 600, 800);
/*声明与定义*/
QLabel* m_labelLeft = new QLabel(this);
m_labelLeft->setText("this is the left!");
QLabel* m_labelRight = new QLabel(this);
m_labelRight->setText("this is the right one !");
/*布局*/
QHBoxLayout* layout = new QHBoxLayout;
layout->setContentsMargins(10, 10, 10, 10);
layout->addWidget(m_labelLeft);
layout->addWidget(m_labelRight);
this->setLayout(layout);
/*获取布局结束后的位置与尺寸信息*/
qDebug()<<m_labelLeft->geometry()->width();
qDebug()<<m_labelRight->geometry()->width();
如以上代码所示,我在布局结束后获取到的宽度信息,总是为100(可能为QT的默认宽度),但实际显示中显然不是100,请各位大虾指点一下,我怎么才能获取控件的准确的尺寸信息呢?谢谢!