Я пытаюсь поместить QtableWidget в QScrollArea (только один виджет), чтобы иметь возможность прокручивать его по вертикали и горизонтали (у меня есть причины не использовать полосы прокрутки в Qtablewidget). Однако полоса прокрутки не отображается, хотя tableWidget не помещается в окне, поэтому я установил QtCore.Qt.ScrollBarAlwaysOn
, и теперь они есть, но они серые, и я все еще не могу прокручивать.
Вот мой код:
class Table(QtGui.QDialog):
def __init__(self, parent=None):
super(Table, self).__init__(parent)
layout = QtGui.QGridLayout()
tableWidget = QtGui.QTableWidget()
#.... set up and populate tableWidget here 1000rows-10col ....
myScrollArea = QtGui.QScrollArea()
myScrollArea.setWidgetResizable(True)
myScrollArea.setVerticalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOn)
myScrollArea.setHorizontalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOn)
myScrollArea.setWidget(tableWidget)
layout.addWidget(myScrollArea)
self.setLayout(layout)
self.setMinimumSize(1000, 700)
Я новичок в PyQt и не очень разбираюсь в макетах и контейнерах, поэтому не могу понять, что делаю не так. Пожалуйста, укажите мне правильное направление, помощь будет принята с благодарностью.