Programme s'execute sans erreur mais rien n''est affiché

Résolu/Fermé
Frewil - 23 nov. 2021 à 18:15
 Frewil - 24 nov. 2021 à 16:50
Bonjour,

Le code suivant semble s''executer sans erreur, et pourtant la fenetre crée ne s'ouvre pas
Merci pour votre aide

from tkinter import *
from tkinter import messagebox


def passwordwindow():
# Création de la fenetre "password_window"
password_window = Tk()
password_window.title("Connexion")
password_window.geometry("400x120")
password_window.resizable(width=False, height=False)

# pour saisir le mot de passe
username_label = Label(password_window, text="Utilisateur")
username_entry = Entry(password_window, width=30)
username_label.pack()
username_entry.pack()

# pour saisir le mot de passe
password_label = Label(password_window, text="Mot de passe")
pasword_entry = Entry(password_window, width=30)
password_label.pack()
pasword_entry.pack()

# Bouton "Connexion" pour valider le mot de passe
bouton = Button(password_window, text="Connexion")
bouton.pack()
bouton.place(x=170, y=85)
password_window.mainloop()

# Validation du mot de passe si bouton "Connexion" est cliqué
username = "admin"
motdepasse = "123"

if username_entry.get() == username and pasword_entry.get() == motdepasse:
print("Super")

else:
messagebox.showwarning("Message", "username ou mot de passe incorrect")

password_window.mainloop()

6 réponses

yg_be Messages postés 22732 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 28 avril 2024 1 477
23 nov. 2021 à 18:27
bonjour,
merci d'utiliser les balises de code quand tu partages du code:
https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code

ajoute peut-être des print() dans ton code, pour vérifier qu'il exécute bien les instructions que tu souhaites.
0
Bonsoir,

Merci pour ta réponse
J'ai suivi le conseil

from tkinter import *
from tkinter import messagebox


def passwordwindow():
# Création de la fenetre "password_window"
password_window = Tk()
password_window.title("Connexion")
password_window.geometry("400x120")
password_window.resizable(width=False, height=False)

# pour saisir le mot de passe
username_label = Label(password_window, text="Utilisateur")
username_entry = Entry(password_window, width=30)
username_label.pack()
username_entry.pack()

# pour saisir le mot de passe
password_label = Label(password_window, text="Mot de passe")
pasword_entry = Entry(password_window, width=30)
password_label.pack()
pasword_entry.pack()

# Bouton "Connexion" pour valider le mot de passe
bouton = Button(password_window, text="Connexion")
bouton.pack()
bouton.place(x=170, y=85)
password_window.mainloop()

# Validation du mot de passe si bouton "Connexion" est cliqué
username = "admin"
motdepasse = "123"

if username_entry.get() == username and pasword_entry.get() == motdepasse:
print("Super")

else:
messagebox.showwarning("Message", "username ou mot de passe incorrect")

password_window.mainloop()
0
yg_be Messages postés 22732 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 28 avril 2024 1 477
23 nov. 2021 à 20:11
les print() ajoutés t'ont permis de comprendre ton soucis?
tu n'as pas correctement copié ton code entre les balises.
0
malheureusement non
0
J'ai à nouveau copié le code avec les indentations, mais toujours le meme problème

from tkinter import *
from tkinter import messagebox


from tkinter import *
from tkinter import messagebox


def passwordwindow():
    # Création de la fenetre  "password_window"
    password_window = Tk()
    password_window.title("Connexion")
    password_window.geometry("400x120")
    password_window.resizable(width=False, height=False)

    # pour saisir le mot de passe
    username_label = Label(password_window, text="Utilisateur")
    username_entry = Entry(password_window, width=30)
    username_label.pack()
    username_entry.pack()

    # pour saisir le mot de passe
    password_label = Label(password_window, text="Mot de passe")
    pasword_entry = Entry(password_window, width=30)
    password_label.pack()
    pasword_entry.pack()

    # Bouton "Connexion" pour valider le mot de passe
    bouton = Button(password_window, text="Connexion")
    bouton.pack()
    bouton.place(x=170, y=85)
    password_window.mainloop()

    # Validation du mot de passe si bouton "Connexion" est cliqué
    username = "admin"
    motdepasse = "123"

    if username_entry.get() == username and pasword_entry.get() == motdepasse:
        print("Super")

    else:
        messagebox.showwarning("Message", "username ou mot de passe incorrect")

    password_window.mainloop()
0
yg_be Messages postés 22732 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 28 avril 2024 1 477
23 nov. 2021 à 20:56
montre nous le code avec les print() ajoutés.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Bonjour,

Seul "test1" est affiché

from tkinter import *
from tkinter import messagebox

print("test1")

def passwordwindow():
    print("test2")
    password_window = Tk()
    print("test3")
    password_window.title("Connexion")
    print("test4")
    password_window.geometry("400x120")
    password_window.resizable(width=False, height=False)

    # pour saisir le mot de passe
    username_label = Label(password_window, text="Utilisateur")
    username_entry = Entry(password_window, width=30)
    username_label.pack()
    username_entry.pack()

    # pour saisir le mot de passe
    password_label = Label(password_window, text="Mot de passe")
    pasword_entry = Entry(password_window, width=30)
    password_label.pack()
    pasword_entry.pack()

    # Bouton "Connexion" pour valider le mot de passe
    bouton = Button(password_window, text="Connexion")
    bouton.pack()
    bouton.place(x=170, y=85)

    # Validation du mot de passe si bouton "Connexion" est cliqué
    username = "admin"
    motdepasse = "123"

    if username_entry.get() == username and pasword_entry.get() == motdepasse:
        print("Super")

    else:
        messagebox.showwarning("Message", "username ou mot de passe incorrect")

    password_window.mainloop()
0
yg_be Messages postés 22732 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 28 avril 2024 1 477
24 nov. 2021 à 11:47
Quel autre print() devrait-il être exécuté?
Est-ce ton premier exercice avec des fonctions?
0
Salut,

Pour que les instructions de ta fonction soient exécutées, il faut que tu l'appelles cette fonction, donc faire un simple
passwordwindow()
à la suite de ton code, pas dans ta fonction elle-même, bien évidemment.
0
Frewil > douba
24 nov. 2021 à 16:50
Merci beaucoup, il manquait simplement l'appel de la fonction
0
En fait aucun print("testx") ne fait parti du programme.
On m´a proposé de les mettre pour comprendre d´oú vient le pb.
0
yg_be Messages postés 22732 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 28 avril 2024 1 477
24 nov. 2021 à 13:10
comprends-tu maintenant d'où vient le problème?
0
Frewil > yg_be Messages postés 22732 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 28 avril 2024
24 nov. 2021 à 13:11
et non, toujours pas . Est ce que quelqu´un peut m´aider?
0
yg_be Messages postés 22732 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 28 avril 2024 1 477 > Frewil
24 nov. 2021 à 13:13
Est-ce ton premier exercice avec des fonctions?
0
Frewil > yg_be Messages postés 22732 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 28 avril 2024
24 nov. 2021 à 13:16
oui
0
yg_be Messages postés 22732 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 28 avril 2024 1 477 > Frewil
24 nov. 2021 à 14:12
commence peut-être alors par un exercice plus simple.
0