pyqt qlistwidget改变item颜色的操作
时间:2022-04-10 10:32:19|栏目:Python代码|点击: 次
我就废话不多说了,大家还是直接看代码吧~
实例:
from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtCore import *
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
import sys
class Win(QWidget):
def __init__(self):
super(Win, self).__init__()
self.setObjectName("self")
self.resize(400, 300)
self.listWidget = QtWidgets.QListWidget(self)
self.listWidget.setGeometry(QtCore.QRect(10, 20, 256, 192))
self.listWidget.setObjectName("listWidget")
self.pushButton = QtWidgets.QPushButton(self)
self.pushButton.setGeometry(QtCore.QRect(280, 60, 75, 23))
self.pushButton.setObjectName("pushButton")
self.pushButton.clicked.connect(self.add)
self.retranslateUi()
QtCore.QMetaObject.connectSlotsByName(self)
def retranslateUi(self):
_translate = QtCore.QCoreApplication.translate
self.setWindowTitle(_translate("self", "self"))
self.pushButton.setText(_translate("self", "PushButton"))
def add(self):
self.listWidget.addItem('123')
index=self.listWidget.currentRow()+1
if index:
self.listWidget.item(index-1).setBackground(QColor('green'))
self.listWidget.item(index).setBackground(QColor('red'))
else:
self.listWidget.item(index).setBackground(QColor('blue'))
self.listWidget.setCurrentRow(self.listWidget.currentRow()+1)
app=QApplication(sys.argv)
win=Win()
win.show()
sys.exit(app.exec_())
补充:PyQt QListWidget 删除item的坑
使用removeItemWidget函数需要QListWidgetItem的对象本身作为参数,通过findItems得到了对象,调用了函数,但是还是没反应,PyQt5的bug?
使用takeItem删除成功了
item=self.listWidget.findItems('张三',Qt.MatchExactly)[0]
row=self.listWidget.row(item)
print(row)
self.listWidget.takeItem(row)
上一篇:Python彩色化Linux的命令行终端界面的代码实例分享
栏 目:Python代码
下一篇:利用Python实现读取Word表格计算汇总并写入Excel
本文标题:pyqt qlistwidget改变item颜色的操作
本文地址:http://www.codeinn.net/misctech/198720.html






