用Qt组中的按钮上的setGeometry?

时间:2014-04-25 16:29:24

标签: c++ qt button groupbox

所以我正在制作我的第一个GUI。到目前为止,我已经制作了一个分组框,然后制作了一个布局,并为该布局添加了按钮小部件(然后将该布局添加到该组中)。

所有这一切都运行正常,但是当我编译它时,它会填充组合框的整个宽度,例如" 50"高度。

然后我尝试在按钮上使用setGeometry,但这没有任何作用,我可以设置setFixedSize()但不是位置的大小,为什么会这样?以及如何在按钮上设置位置?

1 个答案:

答案 0 :(得分:2)

您应该尝试在布局中添加水平和垂直间隔符,以将窗口小部件放置在布局中的适当位置。例如,您可以在按钮的左侧和右侧放置两个水平垫片,在底部和顶部放置两个垂直垫片。这样,您的按钮始终保持在布局的中心,并具有适当的大小。

如果您使用Qt Designer,可以在Spacers部分找到它们并将它们添加到您的布局中。如果没有,你可以像以下一样使用QSpacerItem:

QSpacerItem *horizontalSpacer;
horizontalSpacer = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);
gridLayout->addItem(horizontalSpacer, 0, 0, 1, 1);