我在QLabel
内有QFrame
。
有时我在QLabel
中有太多文字,并会调整QFrame
所在位置的大小。
现在,我想阻止QLabel
调整其所在的QFrame
的大小。
我不想限制行数或设置QLabel
的最大大小,因为如果应用的窗口大小增加,我确实希望允许QLabel
增加大小
只是想阻止QLabel
扩展它的父母。
任何干净的方法吗?
答案 0 :(得分:1)
使用QScrollArea
(继承QFrame
),并隐藏其滚动条:
label = QtGui.QLabel(text)
frame = QtGui.QScrollArea()
frame.setHorizontalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOff)
frame.setVerticalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOff)
frame.setWidgetResizable(True)
frame.setWidget(label)
这样做的另一个好处是用户仍然可以通过滚动鼠标滚轮来查看任何隐藏文本。