繁体   English   中英

在组合框pyqt中选择特定选项时隐藏标签

[英]To hide a label when a particular option is selected in combobox pyqt

我有一个具有多个选项的组合框,我想在选择特定选项时显示标签,并在选择其他选项时隐藏标签。 我想在用户在组合框中选择选项后立即实现。 我尝试通过使用currentindexchanged()来做到这一点,但它适用于所有选项。

例如,如果我选择选项1,则应显示标签,而当我选择选项2,则该标签应消失。

请帮助我实现这一目标。

# -*- coding: utf-8 -*-
import sys
import os

from PySide2 import QtCore, QtGui, QtWidgets

class MainWindow(QtWidgets.QWidget):
    def __init__(self):
        super(MainWindow, self).__init__()
        self.__ui__()

    def __ui__(self):
        layout_parent = QtWidgets.QVBoxLayout()
        data_list = ["option1", "option2", "option3", "option4", "option5", "option6"]
        self.comboBox = QtWidgets.QComboBox()
        self.comboBox.addItems(data_list)
        self.comboBox.currentIndexChanged.connect(self.currentIndexChanged)
        self.label = QtWidgets.QLabel("Hello World!")
        layout_parent.addWidget(self.comboBox)
        layout_parent.addWidget(self.label)
        self.setLayout(layout_parent)

    def currentIndexChanged(self, index):
        if self.comboBox.itemText(index) == "option1":
            self.label.show()
        else:
            self.label.hide()

if __name__=='__main__':
    app = QtWidgets.QApplication(sys.argv)
    mainWin = MainWindow()
    mainWin.show()
    sys.exit(app.exec_())

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM