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

Tkinter Python Discussion :

Bloqués sur programmation tkinter [Python 3.X]


Sujet :

Tkinter Python

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2016
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2016
    Messages : 2
    Points : 3
    Points
    3
    Par défaut Bloqués sur programmation tkinter
    Bonjour,

    Nous sommes bloqués pour notre TIPE : nous souhaitons faire un jeu, qui consiste à afficher des images tour à tour et à deviner le nom du contenu de l'image. Nous arrivions à afficher l'image avant, mais depuis que nous avons essayé de faire une fonction permettant de passer à l'image suivante, la 1ère image ne s'affiche plus.

    Voici une partie de notre 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
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    def vérification(x):
        global réponseVérif
        if x==nomImage:
            réponseVérif=0
        else:
            réponseVérif=1
     
    def passer():
        global réponseVérif
        réponseVérif=2
     
     
    fen=Tk()
    fen.configure(width=500,height=600)
     
    boutonValiderRéponse=Button(fen,text="Valider",command=vérification(rep))
    boutonPasser=Button(fen,text="Passer",command=passer)
    boutonQuitter4=Button(fen,text="Quitter",command=fen.destroy)
     
    Label1=Label(fen,text='Saisissez votre réponse : ')
     
    rep=""
    nomImage=""
     
    def lancementJeu(difficulté,nbImage):
        cv=Canvas(fen,width=500,height=500)
        cv.pack()
        if difficulté==1:
            chemins=['/C:/Users/Utilisateur/Desktop/Cours/ESEO/TIPE/ImageTipe/Facile[{}]'.format(i) for i in range(1,len(Facile))]
            k=0
            for k in range(1,nbImage):
                imageAlea=choice(Facile)
                imageAlea2=imageAlea[0]
                imageAlea3=imageAlea.index(imageAlea2)
                nomImage=Facile[imageAlea3][1]
                imageAffichée=PhotoImage(file=imageAlea)
                cv.create_image(250,250,image=imageAffichée)
                Label1.pack(side=LEFT,padx=5,pady=5)
                réponse=StringVar()
                réponse=Entry(fen,textvariable=réponse)
                réponse.focus_set()
                réponse.pack(side=LEFT,padx=5,pady=5)
                réponseVérif=1
                boutonValiderRéponse.pack(side=LEFT,padx=5,pady=5)
                boutonQuitter4.pack(side=RIGHT,padx=5,pady=5)
                boutonPasser.pack(side=RIGHT,padx=5,pady=5)
                while réponseVérif==1:
                    print("Réessayez !")
                n=0
                while (imageAlea != Facile[n][0]):
                    n=n+1
                    x=n
                Facile.remove(x)
        fen.mainloop()
    Merci pour votre aide

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 313
    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 313
    Points : 36 819
    Points
    36 819
    Par défaut
    Salut,

    Lorsque vous écrivez des choses comme:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
                while réponseVérif==1:
                    print("Réessayez !")
    vous devez vous poser la question de savoir quand et comment çà va bien pouvoir sortir de cette boucle i.e. quelle magie va pouvoir changer la valeur de "réponseVérif".
    Ah oui, il y a des boutons:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    boutonValiderRéponse=Button(fen,text="Valider",command=vérification(rep))
    boutonPasser=Button(fen,text="Passer",command=passer)
    Le premier ne sert à rien car la fonction est appelée immédiatement (ajouter un "print" dans le corps de la fonction pour voir).
    Le deuxième pourrait servir mais normalement la boucle du "while réponseVérif==1" doit empêcher le GUI de traiter la réponse.

    Ca serait pas mal de lire un tuto. pour apprendre comment fonctionne une bibliothèque graphique comme tkinter et apprendre à l'utiliser i.e. structurer votre programme pour tenir compte des contraintes qu'une telle chose vous impose.
    C'est pas trivial, çà demande du temps avant d'être à l'aise pour l'utiliser.

    - W

  3. #3
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2016
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2016
    Messages : 2
    Points : 3
    Points
    3
    Par défaut
    Merci pour ta réponse Wiztricks, on va essayer de modifier ça

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

Discussions similaires

  1. Fenêtre confirmation sur Programme Access
    Par psychee dans le forum VBA Access
    Réponses: 1
    Dernier message: 03/04/2007, 12h57
  2. Explication sur programme
    Par lg022 dans le forum Access
    Réponses: 3
    Dernier message: 12/03/2007, 14h56
  3. [Configuration] question sur programmation d'untranet
    Par zana74 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 4
    Dernier message: 20/08/2006, 12h59
  4. besoin d'aide sur programme en sql 3
    Par abdel54 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 02/12/2005, 09h19

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