PyQt5 – 在组合框中获取特定索引下的项目内容

  • Post category:Python

以下是关于Python PyQt5组合框获取特定索引下项目内容的完整使用攻略。

简介

PyQt5是一种Python的GUI开发框架,由Riverbank Computing公司开发和维护。它是基于C++ GUI库Qt的Python绑定。PyQt5允许使用Python进行桌面应用程序的开发,并完全支持Python标准GUI库中的所有模块,如(QWidgets,QLayout,QThread,QTimer,等等)。

获取组合框中特定索引下的项目内容

在使用PyQt5时,要获取组合框中的项目内容,首先您需要创建一个下拉框(也称为组合框),然后使用currentIndex()或currentText()函数获取所选项目的索引值或文本。以下是如何在PyQt5中获取组合框中特定索引下的项内容的示例代码:

import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QComboBox

class MainWindow(QMainWindow):
    def __init__(self):
        super().__init__()

        self.combo = QComboBox(self)
        self.combo.addItem("Apple")
        self.combo.addItem("Banana")
        self.combo.addItem("Cherry")

        self.combo.currentIndexChanged.connect(self.onIndexChanged)

        self.setCentralWidget(self.combo)

    def onIndexChanged(self, index):    
        print(self.combo.itemText(index))

if __name__ == "__main__":
    app = QApplication(sys.argv)
    window = MainWindow()
    window.show()
    sys.exit(app.exec_())

在上述示例代码中,我们创建了一个包含三个项目的下拉框,并使用currentIndexChanged信号与槽机制,仅在选中组合框中的任何一个项目时,即调用onIndexChanged()函数,并将所选的项目的索引传递给该函数。onIndexChanged()函数通过itemText()函数获取所选项目的文本值,并在终端上输出它。

您也可以通过currentIndex()函数获取所选项目的索引值。以下是一个使用currentIndex()函数的示例代码:

import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QComboBox

class MainWindow(QMainWindow):
    def __init__(self):
        super().__init__()

        self.combo = QComboBox(self)
        self.combo.addItem("Apple")
        self.combo.addItem("Banana")
        self.combo.addItem("Cherry")

        self.combo.currentIndexChanged.connect(self.onIndexChanged)

        self.setCentralWidget(self.combo)

    def onIndexChanged(self, index):
        print(index)

if __name__ == "__main__":
    app = QApplication(sys.argv)
    window = MainWindow()
    window.show()
    sys.exit(app.exec_())

这个示例代码与之前的非常相似,唯一的不同之处在于,我们使用了currentIndex()函数来获取所选项目的索引值,并在控制台中输出该值。

总结:

那么,以上就是对PyQt5 – 在组合框中获取特定索引下的项目内容的完整使用方法。通过这种方法,我们可以很容易地获取组合框中所选项目的文本或索引值,并在我们的应用程序中使用它。