Виджеты и макеты QScrollArea - PySide/PyQt

Я читал бесконечные примеры на nullege, а также предыдущие вопросы по этой теме на SO. Я полностью сбит с толку, пытаясь настроить QScrollArea в моем проекте PySide UI. Вот чего я пытаюсь достичь:

QWidget или же QFrame который действует как контейнер на странице. QWidget/QFrame содержит 8 Pixmapped меток. Только 2 из меток Pixmapped могут "вписываться" в видимую часть экрана одновременно. QScrollArea используется таким образом, чтобы весь диапазон QWidget/QFrame можно увидеть, используя горизонтальные полосы прокрутки.

В теории это действительно довольно просто, но я просто не могу понять, как QScrollArea ссылки с QWidget/QFrameи нужна ли мне 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 и виджет (который гораздо шире, чем ScrollAreaКажется, не связаны вообще.

Любое руководство будет с благодарностью!

0 ответов

Другие вопросы по тегам