python – 清除QListWidget中的选择
发布时间:2020-12-20 12:21:47 所属栏目:Python 来源:网络整理
导读:我正在使用PyQt4,我在一个窗口中有一个QListWidget,我在运行时向它添加了项目.我想在窗口中使用一个按钮来清除QListWidget的选择. 我想知道是否有任何方法可以实现这一目标? 我检查了clear()但它清除了listwidget中的项目,但我想清除listwidget中的选项. 解
我正在使用PyQt4,我在一个窗口中有一个QListWidget,我在运行时向它添加了项目.我想在窗口中使用一个按钮来清除QListWidget的选择.
我想知道是否有任何方法可以实现这一目标? 我检查了clear()但它清除了listwidget中的项目,但我想清除listwidget中的选项. 解决方法
您应该可以使用
setItemSelected() 执行此操作
这是一个带有“清除”按钮的listWidget的工作示例: from PyQt4 import QtGui,QtCore import sys,random def clear(listwidget): for i in range(listwidget.count()): item = listwidget.item(i) listwidget.setItemSelected(item,False) app = QtGui.QApplication([]) top = QtGui.QWidget() # list widget myListWidget = QtGui.QListWidget(top) myListWidget.setSelectionMode(2) myListWidget.resize(200,300) for i in range(10): item = QtGui.QListWidgetItem("item %i" % i,myListWidget) myListWidget.addItem(item) if random.random() > 0.5: # randomly select half of the items in the list item.setSelected(True) # clear button myButton = QtGui.QPushButton("Clear",top) myButton.resize(60,30) myButton.move(70,300) myButton.clicked.connect(lambda: clear(myListWidget)) top.show() sys.exit(app.exec_()) 看起来像这样: (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |