Connexion
S'inscrire
Actualités
Quoi de neuf
Activités générales
Auteurs
Forums
Nouveaux messages
Rechercher un forum
Quoi de neuf
Nouveaux messages
Nouveaux messages de profil
Activités générales
Membres
Membres inscrits
Visiteurs actuels
Nouveaux messages de profil
Rechercher dans les messages des profils
Teams
Créé ton équipe
Quoi de neuf ?
Nouveaux messages
Rechercher un forum
Menu
Connexion
S'inscrire
Install the app
Install
Forums
Forums généraux
Informatique
Développement
Questions, aides et recherches
<< HELP >> python Qt
JavaScript is disabled. For a better experience, please enable JavaScript in your browser before proceeding.
Vous utilisez un navigateur non à jour ou ancien. Il ne peut pas afficher ce site ou d'autres sites correctement.
Vous devez le mettre à jour ou utiliser un
navigateur alternatif
.
Répondre à la discussion
Message
<blockquote data-quote="AOM-Alpha" data-source="post: 7404660" data-attributes="member: 548943"><p>Alors voilà j’ai créer une application de gestion de mot de passe.</p><p>Probleme, elle est en ligne de commande, ce qui n’est pas du plus joli.</p><p>J’ai donc découvert Qt creator qui permet de faire des fenêtre graphique assez simple.</p><p>Mon code marche correctement mais il me reste un seul soucis à régler, je m’explique :</p><p>Pour passer d’une fenêtre à une autre j’ai suivi cette vidéo : [MEDIA=youtube]dRRpbDFnMHI[/MEDIA]</p><p>Après avoir suivi le tuto cela fonctionne correctement. Sauf que lorsque je veux refaire la même chose à partir de la deuxièmes fenêtre( donc quand je veux ouvrir une troisième fenêtre), elle s’ouvre correctement mais pas moyen de fermer la deuxième, j’ai à peut près tout essayer et là je sèche.</p><p>es ce que quelqu’un pourrait me venir en aide ?</p><p>la partie qui envoie sur l'autre fenetre est le code : gsc()</p><p>de la deuxieme a la troisieme c'est le code : go()</p><p>########</p><p>voila le code que j'excecute :</p><p>[CODE=python]class Ui_Main(object):</p><p> def __init__(self):</p><p> super().__init__()</p><p> self.go_to_gsc = False</p><p> def majtext(self):</p><p> dispo = MAJ.run()</p><p> if dispo == None:</p><p> self.maj.setEnabled(False)</p><p> self.version_check.setPixmap(QtGui.QPixmap("../../Pictures/d9jcs7k-2a4c1cab-da0e-40a4-8bf2-246ebe2e9fa4.png"))</p><p> if dispo == True:</p><p> self.version_check_4.setText("OFF")</p><p> self.version_check_4.setStyleSheet("color: rgb(170, 0, 0)")</p><p> def usertext(self):</p><p> liste = []</p><p> with open('ID.txt') as file:</p><p> for line in file :</p><p> liste += [line.strip()]</p><p> user = liste[2]</p><p> self.version_check_3.setText(user)</p><p> def versiontext(self):</p><p> with open('version.txt') as file:</p><p> for line in file :</p><p> v = line.strip()</p><p> self.version_check_2.setText(v)</p><p> def gsc(self):</p><p> self.window = QtWidgets.QDialog()</p><p> self.ui = Ui_Connexion()</p><p> self.ui.setupUi(self.window)</p><p> Main.hide()</p><p> self.window.show()</p><p> </p><p> def url(self):</p><p> self.window = QtWidgets.QDialog()</p><p> self.ui = Ui_URLSC()</p><p> self.ui.setupUi(self.window)</p><p> Main.hide()</p><p> self.window.show()</p><p> def local(self):</p><p> self.window = QtWidgets.QDialog()</p><p> self.ui = Ui_LOCALSC()</p><p> self.ui.setupUi(self.window)</p><p> Main.hide()</p><p> self.window.show()</p><p> def MAJ(self):</p><p> self.window = QtWidgets.QDialog()</p><p> self.ui = Ui_MAJSC()</p><p> self.ui.setupUi(self.window)</p><p> Main.hide()</p><p> self.window.show()</p><p> def setupUi(self, Main):</p><p> Main.setObjectName("Main")</p><p> Main.resize(812, 600)</p><p> Main.setMinimumSize(QtCore.QSize(456, 360))</p><p> Main.setMaximumSize(QtCore.QSize(1000, 1000))</p><p> font = QtGui.QFont()</p><p> font.setFamily("Gumbo DEMO")</p><p> font.setPointSize(16)</p><p> font.setItalic(False)</p><p> Main.setFont(font)</p><p> icon = QtGui.QIcon()</p><p> icon.addPixmap(QtGui.QPixmap("../Pictures/ghost-writer-2183856_960_720.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)</p><p> Main.setWindowIcon(icon)</p><p> Main.setStyleSheet("background-color: rgb(111, 111, 111);")</p><p> Main.setSizeGripEnabled(False)</p><p> self.name = QtWidgets.QLabel(Main)</p><p> self.name.setGeometry(QtCore.QRect(200, 40, 491, 61))</p><p> font = QtGui.QFont()</p><p> font.setFamily("Gumbo DEMO")</p><p> font.setPointSize(36)</p><p> font.setItalic(False)</p><p> self.name.setFont(font)</p><p> self.name.setStyleSheet("color: rgb(116, 206, 191);")</p><p> self.name.setObjectName("name")</p><p> self.Gestionnaire = QtWidgets.QPushButton(Main)</p><p> self.Gestionnaire.setGeometry(QtCore.QRect(30, 160, 161, 161))</p><p> self.Gestionnaire.setCursor(QtGui.QCursor(QtCore.Qt.PointingHandCursor))</p><p> self.Gestionnaire.setAutoFillBackground(False)</p><p> self.Gestionnaire.setStyleSheet("color : rgb(255, 255, 255);\n"</p><p>"alternate-background-color: rgb(255, 255, 255);\n"</p><p>"background-color: rgb(255, 255, 255);")</p><p> self.Gestionnaire.setText("")</p><p> icon1 = QtGui.QIcon()</p><p> icon1.addPixmap(QtGui.QPixmap("../../Pictures/cyber.ico"), QtGui.QIcon.Normal, QtGui.QIcon.Off)</p><p> self.Gestionnaire.setIcon(icon1)</p><p> self.Gestionnaire.setIconSize(QtCore.QSize(200, 200))</p><p> self.Gestionnaire.setFlat(False)</p><p> self.Gestionnaire.setObjectName("Gestionnaire")</p><p> self.URL = QtWidgets.QPushButton(Main)</p><p> self.URL.setGeometry(QtCore.QRect(220, 160, 171, 161))</p><p> self.URL.setCursor(QtGui.QCursor(QtCore.Qt.PointingHandCursor))</p><p> self.URL.setStyleSheet("color : rgb(255, 255, 255);\n"</p><p>"alternate-background-color: rgb(255, 255, 255);\n"</p><p>"background-color: rgb(255, 255, 255);")</p><p> self.URL.setText("")</p><p> icon2 = QtGui.QIcon()</p><p> icon2.addPixmap(QtGui.QPixmap("../../Pictures/1931235.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)</p><p> self.URL.setIcon(icon2)</p><p> self.URL.setIconSize(QtCore.QSize(162, 180))</p><p> self.URL.setObjectName("URL")</p><p> self.appli = QtWidgets.QPushButton(Main)</p><p> self.appli.setGeometry(QtCore.QRect(420, 160, 171, 161))</p><p> self.appli.setCursor(QtGui.QCursor(QtCore.Qt.PointingHandCursor))</p><p> self.appli.setStyleSheet("color : rgb(255, 255, 255);\n"</p><p>"alternate-background-color: rgb(255, 255, 255);\n"</p><p>"background-color: rgb(255, 255, 255);")</p><p> self.appli.setText("")</p><p> icon3 = QtGui.QIcon()</p><p> icon3.addPixmap(QtGui.QPixmap("../../Pictures/logo_redirect_512.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)</p><p> self.appli.setIcon(icon3)</p><p> self.appli.setIconSize(QtCore.QSize(145, 180))</p><p> self.appli.setObjectName("appli")</p><p> self.maj = QtWidgets.QPushButton(Main)</p><p> self.maj.setGeometry(QtCore.QRect(620, 160, 161, 161))</p><p> self.maj.setCursor(QtGui.QCursor(QtCore.Qt.PointingHandCursor))</p><p> self.maj.setStyleSheet("color : rgb(255, 255, 255);\n"</p><p>"alternate-background-color: rgb(255, 255, 255);\n"</p><p>"background-color: rgb(255, 255, 255);")</p><p> self.maj.setText("")</p><p> icon4 = QtGui.QIcon()</p><p> icon4.addPixmap(QtGui.QPixmap("../../Pictures/mise-a-jour.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)</p><p> self.maj.setIcon(icon4)</p><p> self.maj.setIconSize(QtCore.QSize(145, 180))</p><p> self.maj.setObjectName("maj")</p><p> self.label = QtWidgets.QLabel(Main)</p><p> self.label.setGeometry(QtCore.QRect(10, 10, 141, 121))</p><p> self.label.setText("")</p><p> self.label.setTextFormat(QtCore.Qt.AutoText)</p><p> self.label.setPixmap(QtGui.QPixmap("../papi/ghost.ico"))</p><p> self.label.setScaledContents(True)</p><p> self.label.setObjectName("label")</p><p> self.name_2 = QtWidgets.QLabel(Main)</p><p> self.name_2.setGeometry(QtCore.QRect(50, 320, 131, 21))</p><p> font = QtGui.QFont()</p><p> font.setFamily("Gumbo DEMO")</p><p> font.setPointSize(14)</p><p> font.setItalic(False)</p><p> self.name_2.setFont(font)</p><p> self.name_2.setStyleSheet("color : rgb(255, 178, 172);")</p><p> self.name_2.setObjectName("name_2")</p><p> self.name_3 = QtWidgets.QLabel(Main)</p><p> self.name_3.setGeometry(QtCore.QRect(280, 320, 41, 31))</p><p> font = QtGui.QFont()</p><p> font.setFamily("Gumbo DEMO")</p><p> font.setPointSize(14)</p><p> font.setItalic(False)</p><p> self.name_3.setFont(font)</p><p> self.name_3.setStyleSheet("color: rgb(0, 0, 0);")</p><p> self.name_3.setObjectName("name_3")</p><p> self.name_4 = QtWidgets.QLabel(Main)</p><p> self.name_4.setGeometry(QtCore.QRect(480, 320, 51, 31))</p><p> font = QtGui.QFont()</p><p> font.setFamily("Gumbo DEMO")</p><p> font.setPointSize(14)</p><p> font.setItalic(False)</p><p> self.name_4.setFont(font)</p><p> self.name_4.setStyleSheet("color: rgb(255, 170, 0);")</p><p> self.name_4.setObjectName("name_4")</p><p> self.name_5 = QtWidgets.QLabel(Main)</p><p> self.name_5.setGeometry(QtCore.QRect(640, 320, 131, 31))</p><p> font = QtGui.QFont()</p><p> font.setFamily("Gumbo DEMO")</p><p> font.setPointSize(14)</p><p> font.setItalic(False)</p><p> self.name_5.setFont(font)</p><p> self.name_5.setStyleSheet("color: rgb(213, 51, 51)")</p><p> self.name_5.setObjectName("name_5")</p><p> self.version = QtWidgets.QLabel(Main)</p><p> self.version.setGeometry(QtCore.QRect(20, 380, 341, 201))</p><p> font = QtGui.QFont()</p><p> font.setFamily("Gumbo DEMO")</p><p> font.setPointSize(20)</p><p> font.setItalic(False)</p><p> self.version.setFont(font)</p><p> self.version.setStyleSheet("color: rgb(116, 206, 191);")</p><p> self.version.setObjectName("version")</p><p> self.version_check = QtWidgets.QLabel(Main)</p><p> self.version_check.setGeometry(QtCore.QRect(130, 370, 51, 51))</p><p> font = QtGui.QFont()</p><p> font.setFamily("Gumbo DEMO")</p><p> font.setPointSize(20)</p><p> font.setItalic(False)</p><p> self.version_check.setFont(font)</p><p> self.version_check.setStyleSheet("color: rgb(111, 111, 111);")</p><p> self.version_check.setText("")</p><p> self.version_check.setPixmap(QtGui.QPixmap("../../Pictures/power-1762980_960_720.png"))</p><p> self.version_check.setScaledContents(True)</p><p> self.version_check.setObjectName("version_check")</p><p> self.version_check_2 = QtWidgets.QLabel(Main)</p><p> self.version_check_2.setGeometry(QtCore.QRect(160, 440, 641, 31))</p><p> font = QtGui.QFont()</p><p> font.setFamily("Gumbo DEMO")</p><p> font.setPointSize(20)</p><p> font.setItalic(False)</p><p> self.version_check_2.setFont(font)</p><p> self.version_check_2.setStyleSheet("color: rgb(0, 255, 127)")</p><p> self.version_check_2.setScaledContents(False)</p><p> self.version_check_2.setObjectName("version_check_2")</p><p> self.version_check_3 = QtWidgets.QLabel(Main)</p><p> self.version_check_3.setGeometry(QtCore.QRect(200, 490, 641, 41))</p><p> font = QtGui.QFont()</p><p> font.setFamily("Gumbo DEMO")</p><p> font.setPointSize(20)</p><p> font.setItalic(False)</p><p> self.version_check_3.setFont(font)</p><p> self.version_check_3.setStyleSheet("color: rgb(0, 255, 127)")</p><p> self.version_check_3.setScaledContents(False)</p><p> self.version_check_3.setObjectName("version_check_3")</p><p> self.version_check_4 = QtWidgets.QLabel(Main)</p><p> self.version_check_4.setGeometry(QtCore.QRect(140, 540, 141, 41))</p><p> font = QtGui.QFont()</p><p> font.setFamily("Gumbo DEMO")</p><p> font.setPointSize(20)</p><p> font.setItalic(False)</p><p> self.version_check_4.setFont(font)</p><p> self.version_check_4.setStyleSheet("color: rgb(0, 255, 127)")</p><p> self.version_check_4.setScaledContents(False)</p><p> self.version_check_4.setObjectName("version_check_4")</p><p> ####click</p><p> self.Gestionnaire.clicked.connect(self.gsc)</p><p> self.URL.clicked.connect(self.url)</p><p> self.appli.clicked.connect(self.local)</p><p> self.maj.clicked.connect(self.MAJ)</p><p> ###end</p><p> </p><p></p><p> self.retranslateUi(Main)</p><p> QtCore.QMetaObject.connectSlotsByName(Main)</p><p></p><p> def retranslateUi(self, Main):</p><p> _translate = QtCore.QCoreApplication.translate</p><p> Main.setWindowTitle(_translate("Main", "APi"))</p><p> self.name.setText(_translate("Main", "Bienvenue sur APi"))</p><p> self.name_2.setText(_translate("Main", "<html><head/><body><p>Gestionnaire</p></body></html>"))</p><p> self.name_3.setText(_translate("Main", "<html><head/><body><p>URL</p></body></html>"))</p><p> self.name_4.setText(_translate("Main", "Local"))</p><p> self.name_5.setText(_translate("Main", "Mise à jour"))</p><p> self.version.setText(_translate("Main", "<html><head/><body><p>Online : </p><p>Version : </p><p>Utilisateur : </p><p>À jour : </p></body></html>"))</p><p> self.version_check_2.setText(_translate("Main", "2.0"))</p><p> self.version_check_3.setText(_translate("Main", "User"))</p><p> self.version_check_4.setText(_translate("Main", "ON"))</p><p> ###fcnt</p><p> self.versiontext()</p><p> self.usertext()</p><p> self.majtext()</p><p> ###end</p><p></p><p></p><p>if __name__ == "__main__":</p><p> import sys</p><p> app = QtWidgets.QApplication(sys.argv)</p><p> Main = QtWidgets.QDialog()</p><p> ui = Ui_Main()</p><p> ui.setupUi(Main)</p><p> Main.show()</p><p> sys.exit(app.exec_())[/CODE]</p><p>voila la deuxieme fenetre :</p><p>[CODE=python]# -*- coding: utf-8 -*-</p><p></p><p># Form implementation generated from reading ui file 'CONECT.ui'</p><p>#</p><p># Created by: PyQt5 UI code generator 5.13.0</p><p>#</p><p># WARNING! All changes made in this file will be lost!</p><p></p><p></p><p>from PyQt5 import QtCore, QtGui, QtWidgets</p><p>from GSC import Ui_GSC</p><p>import security, sys, os, time</p><p></p><p>class Ui_Connexion(object):</p><p> def __init__(self):</p><p> super().__init__()</p><p> self.life = 3</p><p> def go(self):</p><p> self.window = QtWidgets.QDialog()</p><p> self.ui = Ui_GSC()</p><p> self.ui.setupUi(self.window)</p><p> self.window.show()</p><p> def verify(self):</p><p> mdp = self.lineEdit.text()</p><p> if not security.verify(mdp):</p><p> self.life -= 1</p><p> self.label_5.setText("Mot de passe incorrecte, "+str(self.life)+" essais restants")</p><p> if self.life == 0:</p><p> sys.exit(app.exec_())</p><p> else:</p><p> self.label_5.setStyleSheet("color: rgb(0, 255, 127);")</p><p> self.label_5.setText("Mot de passe correcte")</p><p> self.go()</p><p> </p><p> def usertext(self):</p><p> with open('ID.txt') as file:</p><p> liste = []</p><p> for line in file:</p><p> liste += [line.strip()]</p><p> user = liste[2]</p><p> self.label_3.setText("USER: "+ user)</p><p> def setupUi(self, Connexion):</p><p> Connexion.setObjectName("Connexion")</p><p> Connexion.resize(541, 442)</p><p> Connexion.setStyleSheet("background-color: rgb(0, 170, 255)")</p><p> self.label = QtWidgets.QLabel(Connexion)</p><p> self.label.setGeometry(QtCore.QRect(180, 0, 211, 201))</p><p> self.label.setText("")</p><p> self.label.setPixmap(QtGui.QPixmap("../../Pictures/1070509.png"))</p><p> self.label.setScaledContents(True)</p><p> self.label.setObjectName("label")</p><p> self.label_2 = QtWidgets.QLabel(Connexion)</p><p> self.label_2.setGeometry(QtCore.QRect(10, 280, 101, 91))</p><p> font = QtGui.QFont()</p><p> font.setFamily("Coconut Cookies")</p><p> font.setPointSize(36)</p><p> self.label_2.setFont(font)</p><p> self.label_2.setObjectName("label_2")</p><p> self.label_3 = QtWidgets.QLabel(Connexion)</p><p> self.label_3.setGeometry(QtCore.QRect(10, 210, 471, 61))</p><p> font = QtGui.QFont()</p><p> font.setFamily("Coconut Cookies")</p><p> font.setPointSize(36)</p><p> self.label_3.setFont(font)</p><p> self.label_3.setObjectName("label_3")</p><p> self.pushButton = QtWidgets.QPushButton(Connexion)</p><p> self.pushButton.setGeometry(QtCore.QRect(170, 380, 191, 51))</p><p> font = QtGui.QFont()</p><p> font.setFamily("Coconut Cookies")</p><p> font.setPointSize(20)</p><p> self.pushButton.setFont(font)</p><p> self.pushButton.setFlat(False)</p><p> self.pushButton.setObjectName("pushButton")</p><p> self.label_4 = QtWidgets.QLabel(Connexion)</p><p> self.label_4.setGeometry(QtCore.QRect(0, 0, 81, 81))</p><p> self.label_4.setText("")</p><p> self.label_4.setPixmap(QtGui.QPixmap("../papi/cyber.ico"))</p><p> self.label_4.setScaledContents(True)</p><p> self.label_4.setObjectName("label_4")</p><p> self.lineEdit = QtWidgets.QLineEdit(Connexion)</p><p> self.lineEdit.setGeometry(QtCore.QRect(120, 310, 411, 41))</p><p> font = QtGui.QFont()</p><p> font.setFamily("Coconut Cookies")</p><p> font.setPointSize(16)</p><p> self.lineEdit.setFont(font)</p><p> self.lineEdit.setText("")</p><p> self.lineEdit.setEchoMode(QtWidgets.QLineEdit.Password)</p><p> self.lineEdit.setObjectName("lineEdit")</p><p> self.label_5 = QtWidgets.QLabel(Connexion)</p><p> self.label_5.setGeometry(QtCore.QRect(90, 350, 501, 31))</p><p> font = QtGui.QFont()</p><p> font.setFamily("Coconut Cookies")</p><p> font.setPointSize(14)</p><p> self.label_5.setFont(font)</p><p> self.label_5.setStyleSheet("color: rgb(170, 0, 0);")</p><p> self.label_5.setObjectName("label_5")</p><p> self.label_2.raise_()</p><p> self.label_5.raise_()</p><p> self.label.raise_()</p><p> self.label_3.raise_()</p><p> self.pushButton.raise_()</p><p> self.label_4.raise_()</p><p> self.lineEdit.raise_()</p><p></p><p> self.retranslateUi(Connexion)</p><p> self.usertext()</p><p> self.pushButton.clicked.connect(self.verify)</p><p> QtCore.QMetaObject.connectSlotsByName(Connexion)</p><p></p><p> def retranslateUi(self, Connexion):</p><p> _translate = QtCore.QCoreApplication.translate</p><p> Connexion.setWindowTitle(_translate("Connexion", "Dialog"))</p><p> self.label_2.setText(_translate("Connexion", "MDP: "))</p><p> self.label_3.setText(_translate("Connexion", "USER: "))</p><p> self.pushButton.setText(_translate("Connexion", "CHECK"))</p><p> self.lineEdit.setPlaceholderText(_translate("Connexion", "Entrer le mot de passe ..."))</p><p> self.label_5.setText(_translate("Connexion", ""))</p><p></p><p></p><p>def run():</p><p> app2 = QtWidgets.QApplication(sys.argv)</p><p> Connexion = QtWidgets.QDialog()</p><p> ui2 = Ui_Connexion()</p><p> ui2.setupUi(Connexion)</p><p> Connexion.show()</p><p> sys.exit(app.exec_())</p><p>[/CODE]</p><p>la troisieme fenetre :</p><p>[CODE=python]# -*- coding: utf-8 -*-</p><p></p><p># Form implementation generated from reading ui file 'GSC.ui'</p><p>#</p><p># Created by: PyQt5 UI code generator 5.13.0</p><p>#</p><p># WARNING! All changes made in this file will be lost!</p><p></p><p></p><p>from PyQt5 import QtCore, QtGui, QtWidgets</p><p></p><p></p><p>class Ui_GSC(object):</p><p> def setupUi(self, GSC):</p><p> GSC.setObjectName("GSC")</p><p> GSC.resize(951, 733)</p><p> self.voir = QtWidgets.QGroupBox(GSC)</p><p> self.voir.setGeometry(QtCore.QRect(10, 10, 311, 711))</p><p> font = QtGui.QFont()</p><p> font.setPointSize(20)</p><p> self.voir.setFont(font)</p><p> self.voir.setObjectName("voir")</p><p> self.listWidget = QtWidgets.QListWidget(self.voir)</p><p> self.listWidget.setGeometry(QtCore.QRect(10, 50, 281, 521))</p><p> font = QtGui.QFont()</p><p> font.setPointSize(12)</p><p> self.listWidget.setFont(font)</p><p> self.listWidget.setObjectName("listWidget")</p><p> with open('user.txt') as file:</p><p> listeuser = []</p><p> for line in file:</p><p> listeuser += [line.strip()]</p><p> for c in listeuser:</p><p> globals() [c] = QtWidgets.QListWidgetItem()</p><p> exec("self.listWidget.addItem(" + c + ")")</p><p> exec(c + ".setText('"+ c + "')")</p><p> self.lineEdit = QtWidgets.QLineEdit(self.voir)</p><p> self.lineEdit.setGeometry(QtCore.QRect(10, 590, 281, 31))</p><p> font = QtGui.QFont()</p><p> font.setPointSize(18)</p><p> self.lineEdit.setFont(font)</p><p> self.lineEdit.setEchoMode(QtWidgets.QLineEdit.Password)</p><p> self.lineEdit.setObjectName("lineEdit")</p><p> self.pushButton = QtWidgets.QPushButton(self.voir)</p><p> self.pushButton.setGeometry(QtCore.QRect(40, 640, 201, 61))</p><p> self.pushButton.setObjectName("pushButton")</p><p></p><p> self.retranslateUi(GSC)</p><p> QtCore.QMetaObject.connectSlotsByName(GSC)</p><p></p><p> def retranslateUi(self, GSC):</p><p> _translate = QtCore.QCoreApplication.translate</p><p> GSC.setWindowTitle(_translate("GSC", "Dialog"))</p><p> self.voir.setTitle(_translate("GSC", "Mots de passe"))</p><p> __sortingEnabled = self.listWidget.isSortingEnabled()</p><p> self.listWidget.setSortingEnabled(False)</p><p> self.listWidget.setSortingEnabled(__sortingEnabled)</p><p> self.lineEdit.setPlaceholderText(_translate("GSC", "Entrer le mot clef ..."))</p><p> self.pushButton.setText(_translate("GSC", "Afficher"))</p><p></p><p></p><p>if __name__ == "__main__":</p><p> import sys</p><p> app = QtWidgets.QApplication(sys.argv)</p><p> GSC = QtWidgets.QDialog()</p><p> ui = Ui_GSC()</p><p> ui.setupUi(GSC)</p><p> GSC.show()</p><p> sys.exit(app.exec_())</p><p>[/CODE]</p><p>Ce qui pose problème c’est que le MAIN.hide() ne peut pas être utiliser dans la deuxièmes fonction car il n’existe pas mais du coup je en sais pas quoi faire</p></blockquote><p></p>
[QUOTE="AOM-Alpha, post: 7404660, member: 548943"] Alors voilà j’ai créer une application de gestion de mot de passe. Probleme, elle est en ligne de commande, ce qui n’est pas du plus joli. J’ai donc découvert Qt creator qui permet de faire des fenêtre graphique assez simple. Mon code marche correctement mais il me reste un seul soucis à régler, je m’explique : Pour passer d’une fenêtre à une autre j’ai suivi cette vidéo : [MEDIA=youtube]dRRpbDFnMHI[/MEDIA] Après avoir suivi le tuto cela fonctionne correctement. Sauf que lorsque je veux refaire la même chose à partir de la deuxièmes fenêtre( donc quand je veux ouvrir une troisième fenêtre), elle s’ouvre correctement mais pas moyen de fermer la deuxième, j’ai à peut près tout essayer et là je sèche. es ce que quelqu’un pourrait me venir en aide ? la partie qui envoie sur l'autre fenetre est le code : gsc() de la deuxieme a la troisieme c'est le code : go() ######## voila le code que j'excecute : [CODE=python]class Ui_Main(object): def __init__(self): super().__init__() self.go_to_gsc = False def majtext(self): dispo = MAJ.run() if dispo == None: self.maj.setEnabled(False) self.version_check.setPixmap(QtGui.QPixmap("../../Pictures/d9jcs7k-2a4c1cab-da0e-40a4-8bf2-246ebe2e9fa4.png")) if dispo == True: self.version_check_4.setText("OFF") self.version_check_4.setStyleSheet("color: rgb(170, 0, 0)") def usertext(self): liste = [] with open('ID.txt') as file: for line in file : liste += [line.strip()] user = liste[2] self.version_check_3.setText(user) def versiontext(self): with open('version.txt') as file: for line in file : v = line.strip() self.version_check_2.setText(v) def gsc(self): self.window = QtWidgets.QDialog() self.ui = Ui_Connexion() self.ui.setupUi(self.window) Main.hide() self.window.show() def url(self): self.window = QtWidgets.QDialog() self.ui = Ui_URLSC() self.ui.setupUi(self.window) Main.hide() self.window.show() def local(self): self.window = QtWidgets.QDialog() self.ui = Ui_LOCALSC() self.ui.setupUi(self.window) Main.hide() self.window.show() def MAJ(self): self.window = QtWidgets.QDialog() self.ui = Ui_MAJSC() self.ui.setupUi(self.window) Main.hide() self.window.show() def setupUi(self, Main): Main.setObjectName("Main") Main.resize(812, 600) Main.setMinimumSize(QtCore.QSize(456, 360)) Main.setMaximumSize(QtCore.QSize(1000, 1000)) font = QtGui.QFont() font.setFamily("Gumbo DEMO") font.setPointSize(16) font.setItalic(False) Main.setFont(font) icon = QtGui.QIcon() icon.addPixmap(QtGui.QPixmap("../Pictures/ghost-writer-2183856_960_720.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) Main.setWindowIcon(icon) Main.setStyleSheet("background-color: rgb(111, 111, 111);") Main.setSizeGripEnabled(False) self.name = QtWidgets.QLabel(Main) self.name.setGeometry(QtCore.QRect(200, 40, 491, 61)) font = QtGui.QFont() font.setFamily("Gumbo DEMO") font.setPointSize(36) font.setItalic(False) self.name.setFont(font) self.name.setStyleSheet("color: rgb(116, 206, 191);") self.name.setObjectName("name") self.Gestionnaire = QtWidgets.QPushButton(Main) self.Gestionnaire.setGeometry(QtCore.QRect(30, 160, 161, 161)) self.Gestionnaire.setCursor(QtGui.QCursor(QtCore.Qt.PointingHandCursor)) self.Gestionnaire.setAutoFillBackground(False) self.Gestionnaire.setStyleSheet("color : rgb(255, 255, 255);\n" "alternate-background-color: rgb(255, 255, 255);\n" "background-color: rgb(255, 255, 255);") self.Gestionnaire.setText("") icon1 = QtGui.QIcon() icon1.addPixmap(QtGui.QPixmap("../../Pictures/cyber.ico"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.Gestionnaire.setIcon(icon1) self.Gestionnaire.setIconSize(QtCore.QSize(200, 200)) self.Gestionnaire.setFlat(False) self.Gestionnaire.setObjectName("Gestionnaire") self.URL = QtWidgets.QPushButton(Main) self.URL.setGeometry(QtCore.QRect(220, 160, 171, 161)) self.URL.setCursor(QtGui.QCursor(QtCore.Qt.PointingHandCursor)) self.URL.setStyleSheet("color : rgb(255, 255, 255);\n" "alternate-background-color: rgb(255, 255, 255);\n" "background-color: rgb(255, 255, 255);") self.URL.setText("") icon2 = QtGui.QIcon() icon2.addPixmap(QtGui.QPixmap("../../Pictures/1931235.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.URL.setIcon(icon2) self.URL.setIconSize(QtCore.QSize(162, 180)) self.URL.setObjectName("URL") self.appli = QtWidgets.QPushButton(Main) self.appli.setGeometry(QtCore.QRect(420, 160, 171, 161)) self.appli.setCursor(QtGui.QCursor(QtCore.Qt.PointingHandCursor)) self.appli.setStyleSheet("color : rgb(255, 255, 255);\n" "alternate-background-color: rgb(255, 255, 255);\n" "background-color: rgb(255, 255, 255);") self.appli.setText("") icon3 = QtGui.QIcon() icon3.addPixmap(QtGui.QPixmap("../../Pictures/logo_redirect_512.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.appli.setIcon(icon3) self.appli.setIconSize(QtCore.QSize(145, 180)) self.appli.setObjectName("appli") self.maj = QtWidgets.QPushButton(Main) self.maj.setGeometry(QtCore.QRect(620, 160, 161, 161)) self.maj.setCursor(QtGui.QCursor(QtCore.Qt.PointingHandCursor)) self.maj.setStyleSheet("color : rgb(255, 255, 255);\n" "alternate-background-color: rgb(255, 255, 255);\n" "background-color: rgb(255, 255, 255);") self.maj.setText("") icon4 = QtGui.QIcon() icon4.addPixmap(QtGui.QPixmap("../../Pictures/mise-a-jour.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.maj.setIcon(icon4) self.maj.setIconSize(QtCore.QSize(145, 180)) self.maj.setObjectName("maj") self.label = QtWidgets.QLabel(Main) self.label.setGeometry(QtCore.QRect(10, 10, 141, 121)) self.label.setText("") self.label.setTextFormat(QtCore.Qt.AutoText) self.label.setPixmap(QtGui.QPixmap("../papi/ghost.ico")) self.label.setScaledContents(True) self.label.setObjectName("label") self.name_2 = QtWidgets.QLabel(Main) self.name_2.setGeometry(QtCore.QRect(50, 320, 131, 21)) font = QtGui.QFont() font.setFamily("Gumbo DEMO") font.setPointSize(14) font.setItalic(False) self.name_2.setFont(font) self.name_2.setStyleSheet("color : rgb(255, 178, 172);") self.name_2.setObjectName("name_2") self.name_3 = QtWidgets.QLabel(Main) self.name_3.setGeometry(QtCore.QRect(280, 320, 41, 31)) font = QtGui.QFont() font.setFamily("Gumbo DEMO") font.setPointSize(14) font.setItalic(False) self.name_3.setFont(font) self.name_3.setStyleSheet("color: rgb(0, 0, 0);") self.name_3.setObjectName("name_3") self.name_4 = QtWidgets.QLabel(Main) self.name_4.setGeometry(QtCore.QRect(480, 320, 51, 31)) font = QtGui.QFont() font.setFamily("Gumbo DEMO") font.setPointSize(14) font.setItalic(False) self.name_4.setFont(font) self.name_4.setStyleSheet("color: rgb(255, 170, 0);") self.name_4.setObjectName("name_4") self.name_5 = QtWidgets.QLabel(Main) self.name_5.setGeometry(QtCore.QRect(640, 320, 131, 31)) font = QtGui.QFont() font.setFamily("Gumbo DEMO") font.setPointSize(14) font.setItalic(False) self.name_5.setFont(font) self.name_5.setStyleSheet("color: rgb(213, 51, 51)") self.name_5.setObjectName("name_5") self.version = QtWidgets.QLabel(Main) self.version.setGeometry(QtCore.QRect(20, 380, 341, 201)) font = QtGui.QFont() font.setFamily("Gumbo DEMO") font.setPointSize(20) font.setItalic(False) self.version.setFont(font) self.version.setStyleSheet("color: rgb(116, 206, 191);") self.version.setObjectName("version") self.version_check = QtWidgets.QLabel(Main) self.version_check.setGeometry(QtCore.QRect(130, 370, 51, 51)) font = QtGui.QFont() font.setFamily("Gumbo DEMO") font.setPointSize(20) font.setItalic(False) self.version_check.setFont(font) self.version_check.setStyleSheet("color: rgb(111, 111, 111);") self.version_check.setText("") self.version_check.setPixmap(QtGui.QPixmap("../../Pictures/power-1762980_960_720.png")) self.version_check.setScaledContents(True) self.version_check.setObjectName("version_check") self.version_check_2 = QtWidgets.QLabel(Main) self.version_check_2.setGeometry(QtCore.QRect(160, 440, 641, 31)) font = QtGui.QFont() font.setFamily("Gumbo DEMO") font.setPointSize(20) font.setItalic(False) self.version_check_2.setFont(font) self.version_check_2.setStyleSheet("color: rgb(0, 255, 127)") self.version_check_2.setScaledContents(False) self.version_check_2.setObjectName("version_check_2") self.version_check_3 = QtWidgets.QLabel(Main) self.version_check_3.setGeometry(QtCore.QRect(200, 490, 641, 41)) font = QtGui.QFont() font.setFamily("Gumbo DEMO") font.setPointSize(20) font.setItalic(False) self.version_check_3.setFont(font) self.version_check_3.setStyleSheet("color: rgb(0, 255, 127)") self.version_check_3.setScaledContents(False) self.version_check_3.setObjectName("version_check_3") self.version_check_4 = QtWidgets.QLabel(Main) self.version_check_4.setGeometry(QtCore.QRect(140, 540, 141, 41)) font = QtGui.QFont() font.setFamily("Gumbo DEMO") font.setPointSize(20) font.setItalic(False) self.version_check_4.setFont(font) self.version_check_4.setStyleSheet("color: rgb(0, 255, 127)") self.version_check_4.setScaledContents(False) self.version_check_4.setObjectName("version_check_4") ####click self.Gestionnaire.clicked.connect(self.gsc) self.URL.clicked.connect(self.url) self.appli.clicked.connect(self.local) self.maj.clicked.connect(self.MAJ) ###end self.retranslateUi(Main) QtCore.QMetaObject.connectSlotsByName(Main) def retranslateUi(self, Main): _translate = QtCore.QCoreApplication.translate Main.setWindowTitle(_translate("Main", "APi")) self.name.setText(_translate("Main", "Bienvenue sur APi")) self.name_2.setText(_translate("Main", "<html><head/><body><p>Gestionnaire</p></body></html>")) self.name_3.setText(_translate("Main", "<html><head/><body><p>URL</p></body></html>")) self.name_4.setText(_translate("Main", "Local")) self.name_5.setText(_translate("Main", "Mise à jour")) self.version.setText(_translate("Main", "<html><head/><body><p>Online : </p><p>Version : </p><p>Utilisateur : </p><p>À jour : </p></body></html>")) self.version_check_2.setText(_translate("Main", "2.0")) self.version_check_3.setText(_translate("Main", "User")) self.version_check_4.setText(_translate("Main", "ON")) ###fcnt self.versiontext() self.usertext() self.majtext() ###end if __name__ == "__main__": import sys app = QtWidgets.QApplication(sys.argv) Main = QtWidgets.QDialog() ui = Ui_Main() ui.setupUi(Main) Main.show() sys.exit(app.exec_())[/CODE] voila la deuxieme fenetre : [CODE=python]# -*- coding: utf-8 -*- # Form implementation generated from reading ui file 'CONECT.ui' # # Created by: PyQt5 UI code generator 5.13.0 # # WARNING! All changes made in this file will be lost! from PyQt5 import QtCore, QtGui, QtWidgets from GSC import Ui_GSC import security, sys, os, time class Ui_Connexion(object): def __init__(self): super().__init__() self.life = 3 def go(self): self.window = QtWidgets.QDialog() self.ui = Ui_GSC() self.ui.setupUi(self.window) self.window.show() def verify(self): mdp = self.lineEdit.text() if not security.verify(mdp): self.life -= 1 self.label_5.setText("Mot de passe incorrecte, "+str(self.life)+" essais restants") if self.life == 0: sys.exit(app.exec_()) else: self.label_5.setStyleSheet("color: rgb(0, 255, 127);") self.label_5.setText("Mot de passe correcte") self.go() def usertext(self): with open('ID.txt') as file: liste = [] for line in file: liste += [line.strip()] user = liste[2] self.label_3.setText("USER: "+ user) def setupUi(self, Connexion): Connexion.setObjectName("Connexion") Connexion.resize(541, 442) Connexion.setStyleSheet("background-color: rgb(0, 170, 255)") self.label = QtWidgets.QLabel(Connexion) self.label.setGeometry(QtCore.QRect(180, 0, 211, 201)) self.label.setText("") self.label.setPixmap(QtGui.QPixmap("../../Pictures/1070509.png")) self.label.setScaledContents(True) self.label.setObjectName("label") self.label_2 = QtWidgets.QLabel(Connexion) self.label_2.setGeometry(QtCore.QRect(10, 280, 101, 91)) font = QtGui.QFont() font.setFamily("Coconut Cookies") font.setPointSize(36) self.label_2.setFont(font) self.label_2.setObjectName("label_2") self.label_3 = QtWidgets.QLabel(Connexion) self.label_3.setGeometry(QtCore.QRect(10, 210, 471, 61)) font = QtGui.QFont() font.setFamily("Coconut Cookies") font.setPointSize(36) self.label_3.setFont(font) self.label_3.setObjectName("label_3") self.pushButton = QtWidgets.QPushButton(Connexion) self.pushButton.setGeometry(QtCore.QRect(170, 380, 191, 51)) font = QtGui.QFont() font.setFamily("Coconut Cookies") font.setPointSize(20) self.pushButton.setFont(font) self.pushButton.setFlat(False) self.pushButton.setObjectName("pushButton") self.label_4 = QtWidgets.QLabel(Connexion) self.label_4.setGeometry(QtCore.QRect(0, 0, 81, 81)) self.label_4.setText("") self.label_4.setPixmap(QtGui.QPixmap("../papi/cyber.ico")) self.label_4.setScaledContents(True) self.label_4.setObjectName("label_4") self.lineEdit = QtWidgets.QLineEdit(Connexion) self.lineEdit.setGeometry(QtCore.QRect(120, 310, 411, 41)) font = QtGui.QFont() font.setFamily("Coconut Cookies") font.setPointSize(16) self.lineEdit.setFont(font) self.lineEdit.setText("") self.lineEdit.setEchoMode(QtWidgets.QLineEdit.Password) self.lineEdit.setObjectName("lineEdit") self.label_5 = QtWidgets.QLabel(Connexion) self.label_5.setGeometry(QtCore.QRect(90, 350, 501, 31)) font = QtGui.QFont() font.setFamily("Coconut Cookies") font.setPointSize(14) self.label_5.setFont(font) self.label_5.setStyleSheet("color: rgb(170, 0, 0);") self.label_5.setObjectName("label_5") self.label_2.raise_() self.label_5.raise_() self.label.raise_() self.label_3.raise_() self.pushButton.raise_() self.label_4.raise_() self.lineEdit.raise_() self.retranslateUi(Connexion) self.usertext() self.pushButton.clicked.connect(self.verify) QtCore.QMetaObject.connectSlotsByName(Connexion) def retranslateUi(self, Connexion): _translate = QtCore.QCoreApplication.translate Connexion.setWindowTitle(_translate("Connexion", "Dialog")) self.label_2.setText(_translate("Connexion", "MDP: ")) self.label_3.setText(_translate("Connexion", "USER: ")) self.pushButton.setText(_translate("Connexion", "CHECK")) self.lineEdit.setPlaceholderText(_translate("Connexion", "Entrer le mot de passe ...")) self.label_5.setText(_translate("Connexion", "")) def run(): app2 = QtWidgets.QApplication(sys.argv) Connexion = QtWidgets.QDialog() ui2 = Ui_Connexion() ui2.setupUi(Connexion) Connexion.show() sys.exit(app.exec_()) [/CODE] la troisieme fenetre : [CODE=python]# -*- coding: utf-8 -*- # Form implementation generated from reading ui file 'GSC.ui' # # Created by: PyQt5 UI code generator 5.13.0 # # WARNING! All changes made in this file will be lost! from PyQt5 import QtCore, QtGui, QtWidgets class Ui_GSC(object): def setupUi(self, GSC): GSC.setObjectName("GSC") GSC.resize(951, 733) self.voir = QtWidgets.QGroupBox(GSC) self.voir.setGeometry(QtCore.QRect(10, 10, 311, 711)) font = QtGui.QFont() font.setPointSize(20) self.voir.setFont(font) self.voir.setObjectName("voir") self.listWidget = QtWidgets.QListWidget(self.voir) self.listWidget.setGeometry(QtCore.QRect(10, 50, 281, 521)) font = QtGui.QFont() font.setPointSize(12) self.listWidget.setFont(font) self.listWidget.setObjectName("listWidget") with open('user.txt') as file: listeuser = [] for line in file: listeuser += [line.strip()] for c in listeuser: globals() [c] = QtWidgets.QListWidgetItem() exec("self.listWidget.addItem(" + c + ")") exec(c + ".setText('"+ c + "')") self.lineEdit = QtWidgets.QLineEdit(self.voir) self.lineEdit.setGeometry(QtCore.QRect(10, 590, 281, 31)) font = QtGui.QFont() font.setPointSize(18) self.lineEdit.setFont(font) self.lineEdit.setEchoMode(QtWidgets.QLineEdit.Password) self.lineEdit.setObjectName("lineEdit") self.pushButton = QtWidgets.QPushButton(self.voir) self.pushButton.setGeometry(QtCore.QRect(40, 640, 201, 61)) self.pushButton.setObjectName("pushButton") self.retranslateUi(GSC) QtCore.QMetaObject.connectSlotsByName(GSC) def retranslateUi(self, GSC): _translate = QtCore.QCoreApplication.translate GSC.setWindowTitle(_translate("GSC", "Dialog")) self.voir.setTitle(_translate("GSC", "Mots de passe")) __sortingEnabled = self.listWidget.isSortingEnabled() self.listWidget.setSortingEnabled(False) self.listWidget.setSortingEnabled(__sortingEnabled) self.lineEdit.setPlaceholderText(_translate("GSC", "Entrer le mot clef ...")) self.pushButton.setText(_translate("GSC", "Afficher")) if __name__ == "__main__": import sys app = QtWidgets.QApplication(sys.argv) GSC = QtWidgets.QDialog() ui = Ui_GSC() ui.setupUi(GSC) GSC.show() sys.exit(app.exec_()) [/CODE] Ce qui pose problème c’est que le MAIN.hide() ne peut pas être utiliser dans la deuxièmes fonction car il n’existe pas mais du coup je en sais pas quoi faire [/QUOTE]
Insérer les citations…
Vérification
Publier la réponse
Forums
Forums généraux
Informatique
Développement
Questions, aides et recherches
<< HELP >> python Qt
Ce site utilise des cookies. En continuant à utiliser ce site, vous acceptez l'utilisation des cookies.
Acceptez
En savoir plus.…
Haut