J'ai créé de nombreuses interfaces graphiques dans PyQT en utilisant QT Designer, mais maintenant j'essaie d'ouvrir une interface depuis un autre, et je ne sais pas comment le faire. Start.py est le fichier qui exécuter l'interface GUI Authentification_1 et Acceuil_start.py est le fichier qui exécuter l'interface graphique Acceuil_2.py, maintenant je veux de Start.py déjeuner Acceuil_start .py. Avez-vous une idée à ce sujet? Je vous remercie. Voici mon code:Ouvrir un fichier GUI à partir d'un autre fichier PyQT
Start.py :
import sys
from PyQt4 import QtCore, QtGui
from Authentification_1 import Ui_Fenetre_auth
from Acceuil_2 import Ui_MainWindow #??? Acceuil_2.py is the file which I want to open
class StartQT4(QtGui.QMainWindow):
def __init__(self, parent=None):
QtGui.QWidget.__init__(self, parent)
self.ui = Ui_Fenetre_auth()
self.ui.setupUi(self)
def authentifier(val): #Slot method
self.Acceuil = Acceuil() #???
self.Acceuil.show() #???
if __name__ == "__main__":
app = QtGui.QApplication(sys.argv)
myapp = StartQT4()
myapp.show()
sys.exit(app.exec_())
Acceuil_start.py
import sys
from PyQt4 import QtCore, QtGui
from Authentification_1 import Ui_Fenetre_auth
from Acceuil_2 import Ui_MainWindow
class StartQT4(QtGui.QMainWindow):
def __init__(self, parent=None):
QtGui.QWidget.__init__(self, parent)
self.ui = Ui_MainWindow()
self.ui.setupUi(self)
if __name__ == "__main__":
app = QtGui.QApplication(sys.argv)
myapp = StartQT4()
myapp.show()
sys.exit(app.exec_())
Merci. Est la classe parent, la classe qui devrait ouvrir l'autre? et pourquoi devrais-je changer le nom de la classe dans _Acceuil_start.py_? – Copernic
@Mehdi Je vais mettre à jour ma réponse! Est-ce que cela fonctionne jusqu'à présent? –
Non, il me donne cette erreur: _NameError: nom global 'Acceuil' n'est pas défini_ pour: 'self.Acceuil = Acceuil (self)' – Copernic