Bonjour tout le monde !
Alors voila j'ai un projet d'informatique a faire pour le bac car je suis en spécialité informatique seulement j'ai quelques petits soucis que mon prof ne peut résoudre c'est pourquoi je suis ici :)
alors je souhaite faire un QCM avec une interface graphique sur Tkinter. je joins le programme qui me pose problème dont le problème est justement Q str(k) que l'on retrouve plusieurs fois tout au long du programme.
Si vous pouviez résoudre ce problème je pourrais continuer à avancer sur mon projet merci d'avance ! :)


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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
from Tkinter import*     
Fen1=Tk()               
Fen1.title(u"Projet Final")
 
 
Af1=Label(Fen1, text= u"Bonjour, vous allez maintenant pouvoir commencer le jeu de Manon. Etes-vous prêt ?")          #Présentation
Af2=Label(Fen1, text="")                #Enoncé
Af3=Label(Fen1, text="")                #Rép1
Af4=Label(Fen1, text="")                #Rép2
Af5=Label(Fen1, text="")                #Rép3
Af6=Label(Fen1, text="Quelle est votre réponse ?")      
Af7=Label(Fen1, text="")        # On l'utilisisera pour dire bonne ou mauvaise réponse.
Ent1=Entry(Fen1)            #Le joueur y rentrera sa réponse
 
n=0             #Compteur du nombre de click sur le bout1
k=1             #Compteur des questions
def ma_commande1():
    global n            
    global k            
    n=n+1           # Le compteur de click augmentera à chaque click, ou à chaque fois que la commande est éxecutée !
    if n==1:        # APrès le premier click :
        Af1.configure ( text=u"Veuillez répondre en entrant la lettre correspondant à votre choix.")                
        Bout1.configure(text=u"Ok")
    elif n==2:          # Après le deuxième click le jeu commence. 
        Af1.pack_forget()               #L'affichage 1 ne sera plus utile.
        Af2.pack()                  # On affiche l'énoncé des questions.      
        Af3.pack()
        Af4.pack()
        Af5.pack()
        Af6.pack()
        Ent1.pack()                 # On affiche l'endroit où le joueur rentrera sa réponse        
        Bout1.configure(text=u"Valider ma réponse.")        # Le bouton 1 vérifiera dorénavant la justesse de la réponse
        Af2.configure ( text=u"Question"+str(k)+            # Affichage des réponses. 
                        Q str(k).enonce)                    
        Af3.configure ( text=u"Réponse A :"
                        Q str(k).rep1)
        Af4.configure ( text=u"Réponse B :"
                        Q str(k).rep2)
        Af5.configure ( text=u"Réponse C :"
                        Q str().rep3)
    else:               # A chaque fois que le joueur clickera sur le bouton 1, la réponse du joueur sera vérifiée.
        repjoueur=Ent1.get()        #On enregistre la réponse sous un autre nom qui nous permettra de meux la reconnaitre.
        repjoueur= repjoueur.upper()        # Ce que rentre le joueur est mis en majuscule.
        if repjoueur=Q str(k).repjuste:     
            Af7.pack()
            Af7.configure(text=u"Bonne réponse ! vous pouvez passer la question suivante")
            Bout2.pack()        # LE bouton permettant de passer à la question suivante apparait.
        else :
            Af7.pack()
            Af7.configure(text=u" Mauvaise réponse ! Vous avez répondu "+repjoueur+" alors que la bonne réponse était la "+Q str(k).repjuste+".")     
            Bout2.pack()          
 
def ma_commande2 ():            # Commande pour paser à la question suivante.
    k=k+1               #On augmente le compteur de question.    
    Ent1.delete(0,END)
    Af2.configure ( text=u"Question"+str(k)+            # On affiche la question suivante.           
                        Q str(k).enonce)
    Af3.configure ( text=u"Réponse A :"
                        Q str(k).rep1)
    Af4.configure ( text=u"Réponse B :"
                        Q str(k).rep2)
    Af5.configure ( text=u"Réponse C :"
                        Q str(k).rep3)      
    Bout2.pack_forget()             #Le bouton disparait
 
 
Bout1=Button(Fen1,text=u"Oui",command=ma_commande1)
Bout2=Button(Fen1,text=u"Question Suivante",command=ma_commande2)
 
 
Af1.pack()
Af2.pack_forget()
Af3.pack_forget()
Af4.pack_forget()
Af5.pack_forget()
Af6.pack_forget()
Ent1.pack_forget()
Bout1.pack()
Af7.pack_forget()
Bout2.pack_forget()
 
Fen1.mainloop()



Merci d'avance !!