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 :

Besoin d'aide pour un compte à rebours


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Avril 2018
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : France, Eure et Loir (Centre)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Avril 2018
    Messages : 2
    Par défaut Besoin d'aide pour un compte à rebours
    Bien le bonjour à tous,

    Je suis étudiant en Terminale S et j'ai un projet à finaliser dans le cadre de l'option ISN qui consiste à réaliser le jeu du Pendu sur Python. Je m'occupe des comptes à rebours ainsi que de l'HTML. Mais voilà que des petits problèmes s'imposent :

    Premièrement, mon compte à rebours marche plutôt bien pour ce que je compte faire, mais je veux qu'il s'affiche sur la fenêtre au lieu de la console. On a essayé plusieurs choses avec mon professeur d'ISN mais le problème subsiste.
    Deuxièmement, lorsque le compte à rebours en question se termine, il m'affiche message1 dans lequel il y a marqué "Il reste 1 secondes".

    Comment faire pour les régler s'il vous plaît ? Même si cela parait anodin pour pas mal d'entre-vous

    Merci d'avance, j'ai mis le code en dessous :

    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
    import tkinter as tk
    import time
    import winsound
    from tkinter import *
    from timeit import default_timer
     
    def comptefacile(t = 5):
        global tex1
        while t > 0:
            message= '\rIl te reste : {} secondes'.format(t)
            message1='Il te reste : '+str(t) + 'secondes'
            print(message1)
            tex1.config(text=message1)
            t -= 1
            time.sleep(1)
     
    fenMF = Tk()
    fenMF.title('Attention !')
    tex1 = Label(fenMF,text = 'Compte à rebours')
    tex1.pack()
    bouton = Button(text="test", command=comptefacile)
    bouton.pack()
     
    fenMF.mainloop()

  2. #2
    Expert confirmé
    Avatar de fred1599
    Homme Profil pro
    Lead Dev Python
    Inscrit en
    Juillet 2006
    Messages
    4 083
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Lead Dev Python
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2006
    Messages : 4 083
    Par défaut
    Console et interface graphique ce n'est pas la même gestion du temps, avec tkinter, il y a la méthode after qui te permet de faire cela proprement.

    Voici un exemple.

    Exemple n°9 à voir

    Le terme countdown via ton moteur de recherche préféré permettra de trouver d'autres exemples avec after.

  3. #3
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 762
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 762
    Par défaut
    Salut,

    Citation Envoyé par HarryBeau28 Voir le message
    Comment faire pour les régler s'il vous plaît ? Même si cela parait anodin pour pas mal d'entre-vous
    Avec une bibliothèque graphique, rien n'est anodin...
    Regardez plutôt:
    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
    import tkinter as tk
    import time
     
     
    root = tk.Tk()
     
    counter_label = tk.Label(root, text=0)
    counter_label.pack()
     
    timer = None
    def do_start(max_duration=10, start_time=None):
        global timer
        if start_time is None:
            start_time = time.time()
        elapsed = time.time() - start_time
        seconds_left = int(max_duration - elapsed)
        counter_label['text'] = seconds_left
        if seconds_left:    
            timer = root.after(500, do_start, max_duration, start_time)
        else:
            timer = None
     
    def do_cancel():
        global timer
        if timer:
            root.after_cancel(timer)
            timer = None
     
    tk.Button(text='start', command=do_start).pack()
    tk.Button(text='cancel', command=do_cancel).pack()
    tk.mainloop()
    Pour écrire çà il faut comprendre comment fonctionne une bibliothèque évènementielle telle que tkinter, avoir un peu potassé les différentes méthodes que çà offre,... Pire, c'est aussi difficile à lire et à réutiliser... ouvrir un tuto. s'impose.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

Discussions similaires

  1. Besoin d'aide pour des caculs de comptes sous excel
    Par sonardej dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 11/10/2014, 17h43
  2. [2010] besoin d aide pour une feuille de compte personnel
    Par beracoli dans le forum Microsoft Office
    Réponses: 0
    Dernier message: 26/02/2014, 18h58
  3. Aide pour un compte à rebours
    Par fenix29 dans le forum Général JavaScript
    Réponses: 12
    Dernier message: 25/05/2008, 20h15
  4. [TP]besoin d'aide pour commandes inconnues
    Par Upal dans le forum Turbo Pascal
    Réponses: 15
    Dernier message: 03/10/2002, 10h48
  5. Besoin d'aide pour l'I.A. d'un puissance 4
    Par Anonymous dans le forum C
    Réponses: 2
    Dernier message: 25/04/2002, 17h05

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