📜  PyQt5 QListWidget – 获取当前选中的行(1)

📅  最后修改于: 2023-12-03 15:03:58.273000             🧑  作者: Mango

PyQt5 QListWidget – 获取当前选中的行

在 PyQt5 中,QListWidget是一种列表控件,可以用来展示一系列的列表数据。有时候我们需要在用户选中某行时获取到该行的数据,以便做一些操作。本篇文档将介绍如何获取当前选中的行。

代码示例

下面是一个简单的 QListWidget 示例:

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

class Example(QWidget):
    
    def __init__(self):
        super().__init__()        
        self.initUI()
        
    def initUI(self):
        # 创建 QListWidget
        self.listWidget = QListWidget(self)
        self.listWidget.addItem('Item 1')
        self.listWidget.addItem('Item 2')
        self.listWidget.addItem('Item 3')
        
        # 创建一个垂直布局和添加 QListWidget
        vbox = QVBoxLayout()
        vbox.addWidget(self.listWidget)
        
        # 设置界面布局并显示
        self.setLayout(vbox)
        self.setGeometry(300, 300, 350, 300)
        self.setWindowTitle('QListWidget')
        self.show()
        
if __name__ == '__main__':
    app = QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())

在代码中,我们创建了一个 QListWidget,并添加了三个条目。接下来是获取当前选中的行的代码示例:

# 获取当前选中的行索引
currentRow = self.listWidget.currentRow()
print('Current row index:', currentRow)

# 获取当前选中的行文本
currentItem = self.listWidget.currentItem()
print('Current row text:', currentItem.text())

在上述代码中,我们使用了 QListWidget 的 currentRow() 方法获取当前选中行的索引。我们也可以通过 currentItem() 方法获取当前选中行的数据。这两种方法都非常简单易懂,可以根据需要进行选择。

总结

本篇文档介绍了 PyQt5 QListWidget 如何获取当前选中的行。代码示例简单易懂,结果也符合预期。相信大家已经掌握了该知识点,期待在实际的 PyQt5 开发中有所应用!