【问题标题】:PyQt suddenly stopped showing QMessage? [duplicate]PyQt 突然停止显示 QMessage? [复制]
【发布时间】:2020-07-05 09:26:05
【问题描述】:

这段代码昨天运行良好,但是当我今天再次运行这段代码时,它忽略了第一个 if 语句(显示消息的那个)并直接转到 elif 语句。如果 team_name 为 - " "(空)或包含任何特殊字符,它应该显示一条消息。我试图将“”(空)和特殊字符都放在输入字段中。其他一切正常,只有消息没有显示。另外,QMessageBox 模块已经导入。

team_name, ok = QtWidgets.QInputDialog.getText(MainWindow, "Team Name", "Enter Name Of Your Team:")
    if ok:
        if team_name.isalnum() == False:
            msg = QMessageBox()
            msg.setWindowTitle("Team Name")
            msg.setText("Invalid Team Name")
            msg.setInformativeText("Team Name Must Not Be Empty Or Contain Any Special Characters!")
            msg.setIcon(QMessageBox.Critical)
            msg.buttonClicked.connect(self.new_team)
        elif team_name.isalnum():
            self.team_name_lbl.setText(str(team_name))

【问题讨论】:

    标签: python python-3.x pyqt pyqt5


    【解决方案1】:

    代码运行良好,但您忘记了 execute QMessageBox()

        if ok:
            if team_name.isalnum() == False:
                msg = QMessageBox()
                msg.setWindowTitle("Team Name")
                msg.setText("Invalid Team Name")
                msg.setInformativeText("Team Name Must Not Be Empty Or Contain Any Special Characters!")
                msg.setIcon(QMessageBox.Critical)
                msg.buttonClicked.connect(self.new_team)
                msg.exec()
            elif team_name.isalnum():
                print("It works")
    
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-02-26
      • 2012-04-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多