C++ 使用Qt在组中设置按钮上的几何图形?

C++ 使用Qt在组中设置按钮上的几何图形?,c++,qt,button,groupbox,C++,Qt,Button,Groupbox,因此,我正在制作我的第一个GUI。到目前为止,我已经制作了一个groupbox,然后制作了一个布局,并将buttons小部件添加到该布局中(然后将该布局添加到组中) 所有这些都很好,但当我编译它时,它填充了groupbox的整个宽度,高度大约为“50” 然后我尝试在按钮上使用setGeometry,但这没有任何作用,我可以使用setFixedSize()设置大小,但不能设置位置,这是为什么?如何设置按钮的位置?您应该尝试在布局中添加水平和垂直间隔符,以将小部件定位在布局中的适当位置。例如,您可以

因此,我正在制作我的第一个GUI。到目前为止,我已经制作了一个groupbox,然后制作了一个布局,并将buttons小部件添加到该布局中(然后将该布局添加到组中)

所有这些都很好,但当我编译它时,它填充了groupbox的整个宽度,高度大约为“50”


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

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

如果您使用的是Qt Designer,您可以在“间隔符”部分找到它们,并将它们添加到布局中。如果没有,您可以使用QSpacerItem,如:

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

如何创建间隔符?在谷歌上似乎找不到一个例子,虽然你必须制作一个不可侵犯的物品来改变按钮的位置和大小,但是谢谢