参考了很多网友的设计,最终看到一个比较适用的,简化一下,留作备用。

import sys
from PyQt5.QtCore import Qt
from PyQt5.QtGui import QStandardItem
from PyQt5.QtWidgets import QApplication, QDialog, QComboBox
class userCheckComb(QComboBox):
def __init__(self, parent=None):
# 参数必须加,因为需要控件需要加入某个窗体
super().__init__(parent)
# 必须设置可编辑,否则lineedit不可编辑,没有settext()
self.setEditable(True)
self.model().dataChanged.connect(self.choicechange)
def choicechange(self):
temptext = []
for i in range(self.model().rowCount()):
if self.model().item(i).checkState() == Qt.Checked:
temptext.append(self.model().item(i).text())
text = ','.join(temptext)
self.lineEdit().setText(text)
def addItem(self, text, data=None):
item = QStandardItem()
i

本文介绍了如何在PyQT中创建自定义的下拉列表,该列表包含可复选的选项。通过简化其他网友的设计,提供了一个实用的解决方案,适合后续参考和备忘。
最低0.47元/天 解锁文章
1498

被折叠的 条评论
为什么被折叠?



