I started new PyQt5 programme but I encounter the error "Must construct QApplication before QWidget".
I understand the error, but not find where my code constructs my QWidget first.
Here's my code:
class Main(QWidget):
""" Main window """
def __init__(self, *args):
QWidget.__init__(self, *args)
self.business_list = ['Acheté à', 'Vendu à']
# Pet form
petFormGroupBox = QGroupBox("Description de l'animal")
pet_layout = QFormLayout()
pet_layout.addRow(QLabel("Nom scientifique:"), QLineEdit())
pet_layout.addRow(QLabel("Sexe:"), QLineEdit())
pet_layout.addRow(QLabel("Année de naissance:"), QDateEdit())
pet_layout.addRow(QLabel("Cause décès:"), QLineEdit())
petFormGroupBox.setLayout(pet_layout)
# Business form
petBusinessFormGroupBox = QGroupBox("Achats / Ventes")
pet_business_layout = QFormLayout()
pet_layout.addRow(QLabel("Nom complet + N° d'autorisation"), QLineEdit())
petBusinessFormGroupBox.setLayout(pet_business_layout)
business_btn_group = QRadioButton()
for each in self.business_list:
self.business_list.append(QRadioButton(each))
self.business_list[0].setChecked(True)
business_choices_layout = QHBoxLayout()
counter = 1
for each in self.business_list:
business_choices_layout.addWidget(each)
business_btn_group.addButton(each)
business_btn_group.setId(each, counter)
pet_business_layout.addWidget(business_choices_layout)
hbox = QHBoxLayout()
hbox.addWidget(pet_layout)
hbox.addWidget(pet_business_layout)
self.setLayout(hbox)
class Cites(QMainWindow):
""" Cites app """
def __init__(self):
QMainWindow.__init__(self)
self.setWindowTitle('CITES')
self.setWindowState(Qt.WindowMaximized)
exitAct = QAction(QIcon('exit24.png'), 'Exit', self)
exitAct.setShortcut('Ctrl+Q')
exitAct.triggered.connect(qApp.quit)
fileMenu = self.menuBar().addMenu('File')
fileMenu.addAction(exitAct)
toolbar = self.addToolBar('Main')
toolbar.addAction(exitAct)
main = Main()
self.setCentralWidget(main)
self.statusBar().showMessage('Bienvenue dans CITES')
if __name__ == '__main__':
app = QApplication(sys.argv)
ex = Cites()
ex.show()
sys.exit(app.exec_())
If you have any idea, I am happy!
A happy new year and enjoy your code :).
thanks per advance