摆脱 QListWidget 底部的空白区域
Getting rid of blank area at the bottom of a QListWidget
我将 QListWidget
与 setItemWidget
一起使用,当将项目添加到列表并向下滚动到底部时,我得到以下结果:
所以底部有一个完全空白的区域(不可选择,在上图中列表中的最后一项已被选中)
如何去掉列表底部的空白区域?
请注意,列表中行的高度可以不同
感谢您的帮助和亲切的问候,
托德
我正在使用完全相同的方法,我通过创建一个包含我的 QListWidget
的小部件并使用 :
来摆脱空白区域
listwidget.setFixedSize(widget.width(), listwidget.sizeHintForRow(0) * listwidget.count() + 2 * listwidget.frameWidth())
listwidget
是你QListWidget
对象
widget
是包含您的 QListWidget
对象的小部件
可以通过对 QListWidget
使用 setVerticalScrollMode
来更改为列表完成的垂直滚动类型,以便滚动完成 per pixel(而不是默认的 per item):
self.list_widget.setVerticalScrollMode(QtWidgets.QAbstractItemView.ScrollPerPixel)
结果是QListWidget框的top-most部分的行只能部分绘制,这反过来意味着每一项滚动时存在的空白区域将消失:
参考文档:
https://doc.qt.io/qt-5/qabstractitemview.html#verticalScrollMode-prop
我将 QListWidget
与 setItemWidget
一起使用,当将项目添加到列表并向下滚动到底部时,我得到以下结果:
所以底部有一个完全空白的区域(不可选择,在上图中列表中的最后一项已被选中)
如何去掉列表底部的空白区域?
请注意,列表中行的高度可以不同
感谢您的帮助和亲切的问候, 托德
我正在使用完全相同的方法,我通过创建一个包含我的 QListWidget
的小部件并使用 :
listwidget.setFixedSize(widget.width(), listwidget.sizeHintForRow(0) * listwidget.count() + 2 * listwidget.frameWidth())
listwidget
是你QListWidget
对象
widget
是包含您的 QListWidget
对象的小部件
可以通过对 QListWidget
使用 setVerticalScrollMode
来更改为列表完成的垂直滚动类型,以便滚动完成 per pixel(而不是默认的 per item):
self.list_widget.setVerticalScrollMode(QtWidgets.QAbstractItemView.ScrollPerPixel)
结果是QListWidget框的top-most部分的行只能部分绘制,这反过来意味着每一项滚动时存在的空白区域将消失:
参考文档: https://doc.qt.io/qt-5/qabstractitemview.html#verticalScrollMode-prop