[英]display a QMessageBox PyQT when a different combobox /list box item is selected
[英]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.