Qmessagebox不会只在屏幕上闪烁

时间:2019-08-14 12:32:25

标签: python-3.x pyqt5 qmessagebox

如果用户在输入中填写错误数据,我想显示简单的消息框。该消息框只显示在屏幕上闪烁,然后立即关闭。

import sys, regex, os
from PyQt5.QtWidgets import QMainWindow, QApplication, QMessageBox
from main_ui import *

class AppWindow(QMainWindow):
    def __init__(self):
        super().__init__()
        self.ui = Ui_MainWindow()
        self.ui.setupUi(self)
        self.ui.actionCreate_project.triggered.connect(self.create_project_win)
        self.show()

    def create_project_win(self):
        self.ui.mdiArea.addSubWindow(self.ui.subwindow_create_project)
        self.ui.subwindow_create_project.show()
        self.ui.mdiArea.setViewMode(0)
        self.ui.pushButton_create_project.clicked.connect(self.create_project)

    def create_project(self):
        oppRegex = regex.compile(r'^(OPP-)\d\d-\d\d\d\d\d\d$|^(OPP-)\d\d-\d\d\d\d\d\d\d$')
        if (regex.match(oppRegex, self.ui.lineEdit_sfdc_number.text()) is None) or len(self.ui.lineEdit_project_name.text()) == 0:
            msg = QMessageBox()
            msg.setIcon(QMessageBox.Warning)
            msg.setText("Wrong OPP number entered or missing project name")
            msg.setStandardButtons(QMessageBox.Ok)
            msg.show()

app = QApplication(sys.argv)
w = AppWindow()
w.show()
sys.exit(app.exec_())

我希望在收到客户确认之前显示消息

0 个答案:

没有答案