IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

supprimé un label avec un bouton [Python 3.X]


Sujet :

Python

  1. #1
    Membre averti
    Homme Profil pro
    Lycéen
    Inscrit en
    Décembre 2023
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Lycéen
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2023
    Messages : 24
    Par défaut supprimé un label avec un bouton
    Bonjour à tous, je me tourne vers vous car je n'est pas réussi à trouver comment faire ceci :

    Je souhaiterais supprimé le label incorrect dès lors ou j'ai recliquer sur le bouton "Valider" ou qu'au bout de 'x' secondes le label s'efface pour ne pas avoir une succession de réponses comme ca :
    Nom : appeller_print().PNG
Affichages : 107
Taille : 7,2 Ko

    Pour information, j'ai essayer avec time.sleep()
    Cependant, je n'ai pas réussis !(Je m'y suis peut-être mal pris)
    Y a t-il une possibilité de faire en sorte que mon programme fonctionne correctement ?
    Code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    from tkinter import *
    from tkinter.constants import END
     
     
    quiz_window = Tk()
    quiz_window.title("Quiz")
    quiz_window.geometry("500x600")
     
     
    #Question 1
    def question1_check():
        if entry_question_1.get() == answer_question_1:
            label_right_answer_q1 = Label(quiz_window, text="Correct",font=("Arial",15), fg="green")
            label_right_answer_q1.grid()
            entry_question_1.delete(0, END)
        else:
            label_wrong_answer_q1 = Label(quiz_window, text="Incorrect",font=("Arial",15), fg="red")
            label_wrong_answer_q1.grid()
            entry_question_1.delete(0, END)
     
    label_question_1 = Label(quiz_window, text="Quelle est la capitale de la France ?", font=("Helvetica", 20), fg="blue")
    answer_question_1 = "Paris"
    entry_question_1 = Entry(quiz_window)
    button_check = Button(quiz_window, text="Valider", command=question1_check)
     
    label_question_1.grid(padx=40)
    entry_question_1.grid()
    button_check.grid(pady=20)
     
     
     
    quiz_window.mainloop()

  2. #2
    Membre actif
    Homme Profil pro
    Animateur Numérique
    Inscrit en
    Février 2013
    Messages
    142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Animateur Numérique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Février 2013
    Messages : 142
    Par défaut
    Salut,
    Mauvaise idée de créer ton label dans ta fonction question_check1(), car tu vas créer autant de labels que de clics sur ton bouton.
    Pas besoin d'avoir 2 labels pour afficher les réponses Correct/Incorrect
    Utilise la méthode after() plutôt que time.sleep() car elle est bloquante et gèlera l'accès à ton interface.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    from tkinter import *
    from tkinter.constants import END
     
    quiz_window = Tk()
    quiz_window.title("Quiz")
    quiz_window.geometry("500x600")
     
    def clear_label():
        entry_question_1.delete(0, END)
        label_answer_q1.config(text="")
     
    #Question 1
    def question1_check():
        if entry_question_1.get() == answer_question_1:
            label_answer_q1.config(text="Correct", fg="green")
        else:
            label_answer_q1.config(text="Incorrect", fg="red")
        quiz_window.after(2000, clear_label)
     
    label_question_1 = Label(quiz_window, text="Quelle est la capitale de la France ?", font=("Helvetica", 20), fg="blue")
    label_question_1.grid(padx=40)
     
    answer_question_1 = "Paris"
     
    entry_question_1 = Entry(quiz_window)
    entry_question_1.grid()
     
    button_check = Button(quiz_window, text="Valider", command=question1_check)
    button_check.grid(pady=20)
     
    label_answer_q1 = Label(quiz_window, text="",font=("Arial",15))
    label_answer_q1.grid()
     
    quiz_window.mainloop()

  3. #3
    Membre averti
    Homme Profil pro
    Lycéen
    Inscrit en
    Décembre 2023
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Lycéen
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2023
    Messages : 24
    Par défaut
    En effet, tout fonctionne désormais...
    Je te remercie pour ton aide
    Excellente journée à tout le monde !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Supprimer des caractères avec une requête
    Par Daniel MOREAU dans le forum Access
    Réponses: 3
    Dernier message: 23/05/2006, 23h28
  2. Supprimer fichier uploader avec aspSmartUpload
    Par julio_097 dans le forum ASP
    Réponses: 2
    Dernier message: 11/08/2005, 16h27
  3. [MFC] label avec une police qui s'ajuste
    Par romeo9423 dans le forum MFC
    Réponses: 7
    Dernier message: 15/03/2005, 14h27
  4. [VB.NET] - Probleme Label avec Database
    Par codez dans le forum ASP.NET
    Réponses: 4
    Dernier message: 03/06/2004, 17h37
  5. supprimer une ligne avec cle etrangere
    Par BaBas dans le forum Langage SQL
    Réponses: 4
    Dernier message: 15/07/2003, 11h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo