如何在PyQt5 QListWidget中选中多个项目并打印所有选中内容
QListWidget多选场景获取全部选中项方案
问题根因
你当前使用的currentItem()方法仅会返回QListWidget中最后一次选中/当前处于聚焦状态的单个条目,无法覆盖多选模式下的所有选中项,需要调用selectedItems()方法获取全部选中条目列表。
调整后代码
# 获取listWidget所有选中项的文本,返回值为列表格式 selected_sessions = [item.text() for item in self.listWidget.selectedItems()] # 原有逻辑保持不变 addendant_ = self.listWidget_2.currentRow() scheduled_ = self.dateTimeEdit.dateTime() sched = scheduled_.toString("MM/dd/yyyy h:mm ap") # 打印全部选中项 print(selected_sessions) # 如需逐个打印选中项,可使用遍历逻辑 # for session in selected_sessions: # print(session)
补充说明
- 如果需要对
listWidget_2也做多选取值,同理调用self.listWidget_2.selectedItems()遍历即可 - 若需要获取选中项的行号,可调用
selectedIndexes()方法遍历取值
内容的提问来源于stack exchange,提问作者codereber
相关产品推荐
相关产品推荐

