Qt 清除QListWidget底部的空白区域

Qt 清除QListWidget底部的空白区域,qt,pyqt,qt5,pyqt5,qlistwidget,Qt,Pyqt,Qt5,Pyqt5,Qlistwidget,我将QListWidget与setItemWidget一起使用,将项目添加到列表并向下滚动到底部时,我得到以下结果: 因此,在底部有一个完全空白的区域(不可选择,在列表中最后一项已被选中的图像上方) 如何清除列表底部的空白区域? 请注意,列表中的行高度可能不同 感谢您的帮助并致以亲切的问候, Tord < P>我使用完全相同的方法,我通过创建一个包含我的 QListWIDGET < /C> >的小部件,并使用:去掉空白区域。 listwidget.setFixedSize(widget.wid

我将
QListWidget
setItemWidget
一起使用,将项目添加到列表并向下滚动到底部时,我得到以下结果:

因此,在底部有一个完全空白的区域(不可选择,在列表中最后一项已被选中的图像上方)

如何清除列表底部的空白区域?

请注意,列表中的行高度可能不同

感谢您的帮助并致以亲切的问候,
Tord

< P>我使用完全相同的方法,我通过创建一个包含我的<代码> QListWIDGET < /C> >的小部件,并使用:

去掉空白区域。
listwidget.setFixedSize(widget.width(), listwidget.sizeHintForRow(0) * listwidget.count() + 2 * listwidget.frameWidth())
listwidget
您是
QListWidget
对象吗


widget
是包含
QListWidget
对象的小部件

可以通过对
QListWidget
使用
setVerticalScrollMode
来更改列表的垂直滚动类型,这样滚动就可以每像素(而不是默认的每项)完成:

self.list\u widget.setVerticalScrollMode(QtWidgets.QAbstractItemView.ScrollPerPixel)

结果是,在QListWITGET框的最上面部分的行只能部分地绘制,这意味着当每个条目滚动时存在的空白区域将消失:

参考文件:

谢谢您的帮助,我不确定这是否适用于我的情况,因为行可以有不同的高度(我现在更新了问题以澄清这一点),我昨天找过类似的东西,但找不到我要找的东西。一旦你从滚动而不是项目的角度来看问题,很明显解决方案应该是什么-所以我很失望我自己没有想到这个:|很好的解决方案:)如果它适合我的需要,我可以试试这个,你知道与默认滚动模式相比,
QListWidget
中的项目数量是否会导致一些性能问题吗?@SyedElec我不确定,但我不这么认为,他们没有写任何关于性能的内容,所以我希望不会有任何负面影响effect@sunyata好的,谢谢,它也适用于
QListView