Bonjour, je suis en terminale S spé ISN et je dois adapter mon pendu avec Tkinter pour l'interface graphique mais je n'arrive pas à ce que la lettre qui est entré dans le "Entry" sois affecté à la variable "lettre". Pourriez vous m'aidez ou m'expliquer comment fonctionne le widget "Entry" et le "get()" ? Merci par avance !
Si vous avez des conseils ou quoi que ce sois d'autre je suis preneur également !

Mon code avec Tkinter :
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
from tkinter import *
#import tkMessageBox
 
liste_lettre=['a','z','e','r','t','y','u','i','o','p','q','s','d','f','g','h','j','k','l','m','w','x','c','v','b','n','A','Z','E','R','T','Y','U','I','O','P','Q','S','D','F','G','H','J','K','L','M','W','X','C','V','B','N']
 
def recuperer():
    Lettre = lettre.get()
 
def choix_lettre():
    if lettre in liste_lettre:
        lettres_utilisees.append(lettre)
        entry_1.destroy
        entry_1=Entry(fenetre, textvariable=lettre)
        entry_1.pack()
 
lettres_utilisees=[]
toutes_positions=[]
 
fenetre = Tk()
fenetre.title('Pendu v1.0')
bouton_quit=Button(fenetre, text='Quitter', command=fenetre.destroy)
bouton_quit.pack(side=BOTTOM)
 
lettre=StringVar()
 
entry_1=Entry(fenetre, textvariable=lettre)
entry_1.pack()
bouton_l=Button(fenetre, text='Valider', command=recuperer)
bouton_l.pack()
 
choix_lettre()
 
canvas=Canvas(fenetre, width=150, height=120, bg='grey')
canvas.pack()    
 
fenetre.mainloop()
Mon pendu sous forme texte :
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
#Pendu V(0.1)
 
import random
from tkinter import *
 
def choix_lettre():
    lettre=input("Choisissez une lettre : ")
    lettre=lettre.lower()
    if len(lettre) !=1:
        print ("Ne choisissez qu'une seule lettre !")
        lettre=input("Veuillez entrer une lettre : ")
 
    if lettre in lettres_utilisees:
        print ("Vous avez déjà saisis cette lettre !")
        lettre=input("Veuillez en choisir une autre : ")
 
    return lettre
 
def lettre_du_mot(lettre,mot):
    position=[]
    compteur= 0
    for lettre_mot in mot:
        if lettre_mot==lettre:
            position.append(compteur)
        compteur=compteur+1
    return position
 
def mot_afficher(position,mot):
    mot_affiche=''
    compteur=0
    for lettre_mot in mot:
        if compteur in position:
            mot_affiche=mot_affiche+lettre_mot
        else:
            mot_affiche=mot_affiche+'-'
        compteur=compteur+1
 
    return mot_affiche
 
liste_de_mot=["kebab","mort","jeux","mot","amour","joue","cou","vide","vif","grenier","orage","tromper","guitar","chinois","noir","blanc","vert","billet","drogue","cigarette","gauloise","tigre","chat","chien"]
mot=random.choice(liste_de_mot)
chance = 8
lettres_utilisees=[]
toutes_positions=[]
 
while chance>0:
    print ("Il vous reste",chance,"chances.")
    lettre=choix_lettre()
    lettres_utilisees.append(lettre)
    print ("Vous avez déjà utlisés les lettres :",lettres_utilisees,)
    position=lettre_du_mot(lettre,mot)
    toutes_positions=position+toutes_positions
    mot_a_afficher=mot_afficher(toutes_positions,mot)
    print (mot_a_afficher)
 
    if lettre in mot:
        print ("Bien joué")
    else:
        print ("La lettre n'est pas dans le mot")
        chance=chance-1
    if mot_a_afficher==mot:
        break