PyQt5 QListWidget – 获取选择行为

  • Post category:Python

下面是Python PyQt5中QListWidget获取选择行为的完整使用攻略:

1、QListWidget简介

QListWidget是PyQt5中的组件之一,它可以提供一个可滚动的列表窗口,类似于列表框。每个列表项是一个QListWidgetItem。

2、获取选择行为

QListWidget提供了两种选择行为,一种是单选,一种是多选。获取选择行为可以使用selectedItems()或者currentItem()方法。

2.1 selectedItems()

selectedItems()方法返回当前窗口中所有选定的items列表,每个item都是QListWidgetItem类型的对象。

示例代码:

from PyQt5.QtWidgets import QApplication, QWidget, QListWidget, QVBoxLayout, QListWidgetItem

app = QApplication([])
window = QWidget()
layout = QVBoxLayout()
listWidget = QListWidget()
layout.addWidget(listWidget)

# 添加列表项
for i in range(10):
    item = QListWidgetItem()
    item.setText('list item' + str(i))
    listWidget.addItem(item)

# 获取选择行为
selectedItems = listWidget.selectedItems()
for item in selectedItems:
    print(item.text())

window.setLayout(layout)
window.show()
app.exec()

2.2 currentItem()

currentItem()方法返回当前窗口中当前选择的item。如果当前没有选中的item,则返回一个None类型对象。

示例代码:

from PyQt5.QtWidgets import QApplication, QWidget, QListWidget, QVBoxLayout

app = QApplication([])
window = QWidget()
layout = QVBoxLayout()
listWidget = QListWidget()
layout.addWidget(listWidget)

# 添加列表项
for i in range(10):
    listWidget.addItem('list item' + str(i))

# 获取选择行为
item = listWidget.currentItem()
if item is not None:
    print(item.text())

window.setLayout(layout)
window.show()
app.exec()

以上就是获取选择行为的完整使用攻略,希望可以帮助到你。