我试图将 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 的初学者,我不太了解布局和容器,所以我不知道我做错了什么。请指出我正确的方向,我们将不胜感激。