我已经阅读了无数关于 nullege 的示例,以及之前关于 SO 的这个主题的问题。QScrollArea
我对尝试在我的 PySide UI 项目中设置一个完全感到困惑。这是我想要实现的目标:
A QWidget
orQFrame
充当页面上的容器。包含 8个QWidget/QFrame
像素映射标签。一次只有 2 个像素映射标签可以“适合”屏幕的可见部分。使用A以便使用水平滚动条可以看到QScrollArea
整个范围。QWidget/QFrame
从理论上讲,这真的很简单,但我就是不知道如何与QScrollArea
链接QWidget/QFrame
,以及我是否也需要 a QLayout
。目前,水平滚动条存在,但滚动不可用。这是我到目前为止所拥有的:
#Oscar Home Scroll Area - Scroll Area#
self.ScrollAreaOscarHome = QtGui.QScrollArea(self)
self.ScrollAreaOscarHome.setGeometry(QtCore.QRect(12, 180, 1000, 570))
self.ScrollAreaOscarHome.setVisible(True)
self.ScrollAreaOscarHome.setFrameShape(QtGui.QFrame.NoFrame)
self.ScrollAreaOscarHome.setObjectName("ScrollAreaOscarHome")
self.ScrollAreaOscarHome.setWidgetResizable(True)
self.ScrollAreaOscarHome.setHorizontalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOn)
self.ScrollAreaOscarHome.setVerticalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOff)
#Oscar Home Container Widget - Widget#
self.WidgetOscarHomeContainer = QtGui.QWidget()
self.WidgetOscarHomeContainer.setGeometry(QtCore.QRect(12, 180, 2000, 570))
self.WidgetOscarHomeContainer.setObjectName("WidgetOscarHomeContainer")
self.ScrollAreaOscarHome.setWidget(self.WidgetOscarHomeContainer)
#Oscar Home Horizontal Layout - QHBoxLayout#
self.OscarHomeHorizontalLayout = QtGui.QHBoxLayout(self.WidgetOscarHomeContainer)
我已经包含了QHBoxLayout
上面的部分,因为我之前阅读的示例使用了Layout
,但我不确定它如何适合Widget
和ScrollArea
。
我在正确的轨道上吗?我没有收到任何错误,并且 ScrollArea 正在按我的意愿显示,但是ScrollArea
and Widget(比 Widget 宽得多ScrollArea
)似乎根本没有链接。
任何指导将不胜感激!