Python 如果pyqt5中的组合框中有项,如何启用按钮?

Python 如果pyqt5中的组合框中有项,如何启用按钮?,python,pyqt5,Python,Pyqt5,您好,在这张图片中,当USB名称出现在组合框中时,我想启用开始按钮,如果名称没有出现,按钮应该自动禁用,这是我的代码 def x(self): if (self.comboBox_3.currentIndex() == -1): self.pushButton_5.setEnabled(False) else: self.pushButton_5.setEnabled(True) 必须使用currentIndexChanged信号

您好,在这张图片中,当USB名称出现在组合框中时,我想启用开始按钮,如果名称没有出现,按钮应该自动禁用,这是我的代码

def x(self):
      if (self.comboBox_3.currentIndex() == -1):
          self.pushButton_5.setEnabled(False)
      else:
          self.pushButton_5.setEnabled(True)

必须使用currentIndexChanged信号来评估该逻辑:

    # __init__ method
    # ...
    self.comboBox_3.currentIndexChanged[int].connect(self.on_currentIndexChanged)

def on_currentIndexChanged(self, index):
    self.pushButton_5.setEnabled(index != -1)

如何调用
x()
?您需要设置按钮(或某个侦听器)以观察comboBox的值以及它如何更改和响应该事件。@当QMainWindow打开它运行时,在init函数中调用了AndrewPaxson x()。您必须将combox的更改连接到此函数@安德烈帕克森你能用代码解释一下吗?