python - Pyside2 QScrollArea QLabel 未扩展以包含文本
问题描述
使用 pyside2 和 PyQt,我希望能够label.setText()
在滚动区域内设置文本。这看起来相当简单,但问题是当我运行它时,它会切断除发送到的字符串的第一个字母之外的所有内容,.setText()
并且执行QSizePolicy
操作似乎无法解决问题。
这是我目前作为我的小部件类的代码:
class widgets (QMainWindow) :
def __init__ (self ) :
QMainWindow.__init__(self)
self.label1 = QLabel(self)
self.scrollablel1 = QScrollArea(self)
self.scrollablel1.setWidget(self.label1)
self.label1.setText("foo \n bar \n 2000")
结果是
正如你所看到的,它切断了除了第一个点之外的所有文本。
我尝试添加更多内容无济于事,例如:
self.label1.setContentsMargins(0,0,0,0)
self.label1.setSizePolicy( QSizePolicy.MinimumExpanding , QSizePolicy.MinimumExpanding )
解决方案
一段时间以来一直在思考/研究这个问题,我很尴尬地说我刚刚遇到了解决方案。您所要做的就是添加:
self.scrollablel1.setWidgetResizable(True)
它工作得很好!
推荐阅读
- git - Git 将 'origin/5.4' 重命名为 'origin/5.5'
- pycharm - 如何设置 PyTorch 共享内存大小?
- datepicker - VueJs - el-date-picker:如何设置格式默认值 new Date()
- joomla - Joomla 管理员使用自定义默认组父添加新组
- sql - 仅有时将生成的标识用于同一插入中的另一列
- vtd-xml - VTD-XML 在给定位置添加属性
- angular - 获取节点父节点的item值——Angular Material
- c# - 使用 getter/setter 类属性时 msbuild 编译失败
- node.js - 为什么 nodejs 中的 bcrypt 显示与使用相同加密方法的在线加密工具不同的结果
- c# - 如何在 foreach 循环中获取原始/父对象值?