问题描述
我有一个奇怪的要求。它的长短是当调用QMainWindow::showEvent(QShowEvent* event)
时,我要对QWidget进行大小调整。
简短说明
我在下面有一张布局的图片,因为它比文字更容易显示。 frameCapacityLayout
是qframe
,布局“损坏”。 frameCapacityCircle
是具有网格布局的qframe
。
布局提取(2个水平间隔和frameCapacityCircle
的大小/权重为1,1,1
)
组件层次结构
问题
我的qframe
frameCapacityLayout
在水平布局中给出了错误的几何值。
我检查了整个代码,只有frameCapacityLayout
的5个引用都是“ getters”。此外,未设置最小尺寸或首选尺寸值。
呼叫时:
const QRect localGeometry = ui->frameCapacityContainer->geometry();
默认尺寸为100 x 30,这没有意义,因为通过快速观察屏幕上的实际尺寸应至少为500px。
(如果我向minimumSize
提供frameCapacityContainer
,例如280 x 280,则它将返回此值,而不是100 x30。这不适用于frameCapacityContainer
的任何子代)
我的问题:
在尺寸由父级布局确定的小部件上调用几何是否返回某种尺寸提示,因为在这种情况下这是唯一的可能性?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)