Errore "UI_MainWindow" PyQT5

di il
0 risposte

Errore "UI_MainWindow" PyQT5

Salve, non so sinceramente se sia la sezione giusta, comunque vi spiego il mio problema. Ho utilizzato Qt designer per creare una finestra di dialogo con un comboBox, in seguito ho salvato il progetto e convertito il file.ui in .py. Una volta scritto il codice nella console Python di QGis, però, mi appare l'errore: “NameError: name 'Ui_MainWindow' is not defined”. Ora, non so proprio come risolvere questo problema. Qualcuno sa si tratta di un componente da importare? 

Posto qui il codice completo. (Non ho messo il corpo delle funzioni che vengono richiamate)


from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtCore import QVariant
import processing


class Ui_MainWindow(object):
    def  __init__(self, MainWindow):
        
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(800, 600)
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.listaFunzioni = QtWidgets.QComboBox(self.centralwidget)
        self.listaFunzioni.setGeometry(QtCore.QRect(10, 130, 781, 31))
        font = QtGui.QFont()
        font.setPointSize(14)
        self.listaFunzioni.setFont(font)
        self.listaFunzioni.setObjectName("listaFunzioni")
        self.listaFunzioni.addItem("")
        self.listaFunzioni.addItem("")
        self.listaFunzioni.addItem("")
        self.listaFunzioni.addItem("")
        self.listaFunzioni.addItem("")
        self.pulsanteAvvia = QtWidgets.QPushButton(self.centralwidget)
        self.pulsanteAvvia.setGeometry(QtCore.QRect(280, 370, 201, 51))
        self.pulsanteAvvia.setObjectName("pulsanteAvvia")
        self.label = QtWidgets.QLabel(self.centralwidget)
        self.label.setGeometry(QtCore.QRect(260, 30, 291, 41))
        font = QtGui.QFont()
        font.setPointSize(26)
        self.label.setFont(font)
        self.label.setObjectName("label")
        MainWindow.setCentralWidget(self.centralwidget)
        self.menubar = QtWidgets.QMenuBar(MainWindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 800, 21))
        self.menubar.setObjectName("menubar")
        MainWindow.setMenuBar(self.menubar)
        self.statusbar = QtWidgets.QStatusBar(MainWindow)
        self.statusbar.setObjectName("statusbar")
        MainWindow.setStatusBar(self.statusbar)
        self.pulsanteAvvia.clicked.connect(self.cliccato)
        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)
        
    def cliccato (self):
        scelta = self.listaFunzioni.currentText()
        if scelta == "Trova il terremoto più intenso nell'area":
            
            trovaTerremotoPiuForte()
        elif scelta == "Scopri tutti gli epicentri all'interno dell'area":
            trovaTerremoti()
            
        elif scelta == "Calcola l'intensità media di tutti i terremoti nell'area":
            intensitaMediaTerremoti()
            
        elif scelta == "Calcola l'intervallo medio tra terremoti al di sopra di una certa intensità":
            intervalloMedioTerremoti()
            
        elif scelta == "Calcola l'intervallo medio tra la ricostruzione di un edificio e un terremoto precedentemente":
            intervalloEdificioTerremoto()
            
    
        
    def retranslateUi(self, MainWindow):
        _translate = QtCore.QCoreApplication.translate
        MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
        self.listaFunzioni.setItemText(0, _translate("MainWindow", "Trova il terremoto più intenso nell\'area"))
        self.listaFunzioni.setItemText(1, _translate("MainWindow", "Scopri tutti gli epicentri all\'interno dell\'area"))
        self.listaFunzioni.setItemText(2, _translate("MainWindow", "Calcola l\'intensità media di tutti i terremoti nell\'area"))
        self.listaFunzioni.setItemText(3, _translate("MainWindow", "Calcola l\'intervallo medio tra terremoti al di sopra di una certa intensità"))
        self.listaFunzioni.setItemText(4, _translate("MainWindow", "Calcola l\'intervallo medio tra la ricostruzione di un edificio e un terremoto precedente"))
        self.pulsanteAvvia.setText(_translate("MainWindow", "Avvia"))
        self.label.setText(_translate("MainWindow", "Scegli la funzione"))

    app = QtWidgets.QApplication(sys.argv)
    MainWindow = QtWidgets.QMainWindow()
    ui = Ui_MainWindow()
    ui.setupUi(MainWindow)
    MainWindow.show()
    
Devi accedere o registrarti per scrivere nel forum
0 risposte