gpt4 book ai didi

python - 如何获取 Qt QListWidget 中列出的选中项目

转载 作者:太空宇宙 更新时间:2023-11-03 14:19:49 25 4
gpt4 key购买 nike

我用一个项目列表填充了一个 QListWidget,并添加了一个复选框,让所有内容都处于未选中状态。

for td in root.iter('testdata'):
test_data = td.get('ins')
item = QtGui.QListWidgetItem(test_data, self.listWidgetLabels)
item.setFlags(item.flags() | QtCore.Qt.ItemIsUserCheckable)
item.setCheckState(QtCore.Qt.Unchecked)

然后用户单击 QListItem 中的一些项目并单击 gui 上的“生成文件”按钮。

self.pushButtonGenerateFile.clicked.connect(self.generate_file)

我想获得所有选中的 QListItems 的列表。

def generate_driver(self):
test = self.listWidgetLabels.selectedItems()
items = []
checked_items = []
for index in range(self.listWidgetLabels.count()):
items.append(self.listWidgetLabels.item(index))

for x in self.listWidgetLabels.selectedItems():
checked.append(x.text())
for i in checked:
print("Checked Items: {0}".format(i))

以上是获取列表中的selectedItem。我试过获取 checkState()、getChecked(),但它们对于 QListWidget 项目不存在。

非常感谢任何线索。

谢谢,

约翰。

最佳答案

您需要检查 checkState 是否实际上是 Qt.Checked:

for index in range(self.listWidgetLabels.count()):
if self.listWidgetLabels.item(index).checkState() == Qt.Checked:
checked_items.append(self.listWidgetLabels.item(index).text())

关于python - 如何获取 Qt QListWidget 中列出的选中项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29238394/

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