Как реализовать кнопку обновления в строке меню, чтобы обновить все элементы поля со списком в их исходном состоянии? - PullRequest
0 голосов
/ 19 июня 2019

Импорт библиотек.

from PySide2 import QtWidgets,QtCore,QtGui
from UI import main

Это мой класс, который наследуется и имеет конструктор

class MyQtApp(main.Ui_MainWindow,QtWidgets.QMainWindow):
    def __init__(self):
        super(MyQtApp,self).__init__() 
        self.setupUi(self)
        window size
        self.showNormal()         
        self.submit_pb.clicked.connect(self.fill_box)
        self.Menu()

Это поле fill_box для поля со списком, и у меня есть три поля со списком model_cb, size_cb и color_cb Инулевой индекс - это просто пустая строка для всех них

    def fill_box(self):
        model = self.model_cb.currentText()
        color = self.model_cb.currentText()
        size = self.size_cb.currentText()
        none = ""
        check = True
        if model is none:
            QtWidgets.QMessageBox.about(self,"Name Required","Please enter the Name!")
            check = False
            return
        if color is none:
            QtWidgets.QMessageBox.about(self,"Color Required","Please enter the Color!")
            check = False
            return
        if size is none:
            QtWidgets.QMessageBox.about(self,"Size Required","Please Enter the Size!") 
            check = False
            return
        if check:
            QtWidgets.QMessageBox.about(self, "Done","Submitted")

Эта функция меню предназначена для опций строки меню, что происходит, если кто-то нажимает кнопку Закрыть.У меня есть только два варианта: 1) закрыть, который работает нормально, и 2) обновить, который не работает.

    def Menu(self):
        self.actionClose.triggered.connect(self.close)
        self.actionRefresh.triggered.connect(self.fill_box1)

    def fill_box1(self):
        #If I do this It will reset all the boxes to its original empty 
        #strings but then I would not have all the methods in the class 
        #to add the functionality.

        self.setupUi(self)

if __name__ == '__main__':
    app = QtWidgets.QApplication()    
    qt_app = MyQtApp()
    qt_app.show()
    app.exec_()
...