将小部件置于QScrollArea的中心
问题描述:
如何将固定大小的自定义小部件放置在QScrollArea的中心?将小部件置于QScrollArea的中心
我可以使用myWidget.pos(x,y)在QScrollArea中手动放置窗口部件,但QScrollArea中没有sizeChanged信号,因此如果滚动区域发生更改,此位置将会出错。
答
我使用@ thuga的建议来设置对齐方式,但另外我必须为小部件设置一个固定的尺寸(我之前设置的尺寸只是最小尺寸),还需要使用水平布局而不是垂直的。出于某种原因,垂直布局无视滚动区域的水平对齐。
我使用setFixedSize()
为我的自定义小部件设置了固定大小,但是可以从Qt Designer中设置布局和对齐。
你想做什么? – thuga
我认为把一个小部件放在滚动区域的中心忽略滚动区域的滚动功能的含义。也许你可以考虑使用别的东西呢? – vahancho
我使用QScrollArea来显示单个小部件,让我们说一个绘画画布。而且这个画布具有缩放功能,所以它当然可以小于视口或更大。所以QScrollArea将小孩放在左上角,看起来很丑。 – folibis