gpt4 book ai didi

python - 如何从 QListWidget 中删除项目

转载 作者:太空狗 更新时间:2023-10-30 01:54:31 24 4
gpt4 key购买 nike

每次我需要从 QListWidget 列表中删除 Item 时,我都无法使用 myItem.hide() 方法。隐藏项目而不是删除/删除会使事情变得不必要的复杂。如果您能告诉我如何从 ListWidget 中永久删除 Item,我将不胜感激。

enter image description here


from PyQt4 import QtGui, QtCore

class MyApp(object):
def __init__(self):
super(MyApp, self).__init__()
self.mainWidget = QtGui.QWidget()
self.mainLayout = QtGui.QVBoxLayout()
self.mainWidget.setLayout(self.mainLayout)

self.hLayout = QtGui.QHBoxLayout()
self.mainLayout.insertLayout(0, self.hLayout)
self.listA=QtGui.QListWidget()
for i in range(3):
self.listA.addItem('Item '+str(i))
self.hLayout.addWidget(self.listA)

self.buttonGroupbox = QtGui.QGroupBox()
self.buttonlayout = QtGui.QVBoxLayout()
self.buttonGroupbox.setLayout(self.buttonlayout)

okButton = QtGui.QPushButton('Remove Selected')
okButton.clicked.connect(self.removeSel)
self.buttonlayout.addWidget(okButton)

self.mainLayout.addWidget(self.buttonGroupbox)
self.mainWidget.show()
sys.exit(app.exec_())

def removeSel(self):
listItems=self.listA.selectedItems()
if not listItems: return
for item in listItems:
print type(item), dir(item)

最佳答案

我不知道为什么,但 removeItemWidget 没有按预期工作。您必须改用 take item:

def removeSel(self):
listItems=self.listA.selectedItems()
if not listItems: return
for item in listItems:
self.listA.takeItem(self.listA.row(item))

关于python - 如何从 QListWidget 中删除项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23835847/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com