pyqt5 获得当前list item索引的函数
时间: 2023-06-15 08:03:52 浏览: 101
在 PyQt5 中,可以使用 QListWidget.currentRow() 函数来获取当前选中的 item 的索引。
以下是一个简单的示例代码:
```python
from PyQt5.QtWidgets import QApplication, QWidget, QListWidget, QVBoxLayout, QLabel
import sys
class Example(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
self.list_widget = QListWidget(self)
self.list_widget.addItems(['item1', 'item2', 'item3'])
self.list_widget.currentItemChanged.connect(self.on_current_item_changed)
self.label = QLabel(self)
self.label.setText('Current index: ' + str(self.list_widget.currentRow()))
vbox = QVBoxLayout()
vbox.addWidget(self.list_widget)
vbox.addWidget(self.label)
self.setLayout(vbox)
self.setGeometry(100, 100, 300, 200)
self.show()
def on_current_item_changed(self, current, previous):
self.label.setText('Current index: ' + str(self.list_widget.currentRow()))
if __name__ == '__main__':
app = QApplication(sys.argv)
ex = Example()
sys.exit(app.exec_())
```
在上述代码中,我们创建了一个 QListWidget,其中添加了三个 item。我们连接了 currentItemChanged 信号,该信号在当前选中的 item 发生变化时发出。我们定义了一个 on_current_item_changed 函数来更新 label 中的文本,以显示当前选中的 item 的索引。