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 :

Aide Mots dans Tableau


Sujet :

Tkinter Python

  1. #1
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2017
    Messages
    95
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 24
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2017
    Messages : 95
    Points : 80
    Points
    80
    Par défaut Aide Mots dans Tableau
    Bonsoir, alors je vous expose mon problème :

    Mon programme actuelle marche, quand l'on vient à écrire un mot sur la barre de saisie, le mot s'affiche convenablement.
    Mon problème est que, quand je ré-écris d'autres mots, ils se superposent au premier mot.
    Alors que je voudrais qu'ils s'écrivent, successivement allant en bas.

    Voici mon 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
    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
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    from tkinter import*
    import sys
    import tkinter as tk
     
    mot=""
    #------Initialisation-----#
    canvas_width = 600
    canvas_height = 600
    root = Tk()
    root.title("MOTUS")
     
    #----------"MOTUS" AFFICHAGE----------------#
     
    label_one = Label(root, text = 'MOTUS:',font=("Courier", 50) )
    label_one.grid(row = 0)
     
    #----------Label Veuillez entrer un mot---------#
     
    Label(root, text = "Veuillez entrer un mot", bg="black",fg="white",font="none 12 bold").grid(row=1,column=0)
     
    #----------------Boite d'entrée---------------#
     
    entre = Entry(root)
    entre.grid(row=2,column=0)
     
     
     
    #----------------Bouton---------------#
     
    def message_ecris():
        mot = str(entre.get())
        liste =list(mot)
        x= 50
        y = 50
     
        for loop in range(len(liste)):
            c.create_text( x,y,text=liste[loop],font=("Courier", 25))
            x=x+100
     
     
    bouton = Button(root, text="ENTREE", command=message_ecris)
    bouton.grid(row=3,column=0)
     
    #----------------Mot---------------#
     
     
    mot = Label(text="", font = "Arial 20").grid(row=4)
     
     
     
     
     
     
    c = Canvas(root, width=canvas_width,height=canvas_height, bg="beige")
     
     
     
     
     
    x0,y0,x1,y1= 0,0,600,0
     
    #-----------------Chrono-------------------------#
    counter = 9
     
    def counter_label(label):
      def count():
        global counter
        counter -= 1
        label.config(text=str(counter), font="Arial 20")
        label.after(1000, count)
        if counter < 0:
            label.config(text="Fini")
     
      count()
     
    label = tk.Label(root, fg="red")
    label.grid(row=1,column=4)
    counter_label(label)
     
    #--------------Creation des lignes--------------#
     
     
    for loop in range(7):
        c.create_line(x0,y0,x1,y1,width = 2, fill="#476042")
        y0= y0 + 100
        y1= y1 + 100
     
     
    x0,y0,x1,y1= 0,0,0,600
     
    for loop in range(7):
        c.create_line(x0,y0,x1,y1,width = 2,fill="#476042")
     
        x0= x0 + 100
        x1= x1 + 100
     
     
     
     
    c.grid(row =5 )
     
    root.mainloop()
    J'ai pensé à ajouté :
    Mais le mot inscrit se retrouve en diagonale, tout le long du tableau.

    Merci encore pour votre future aide !

  2. #2
    Membre confirmé

    Homme Profil pro
    Bidouilleur
    Inscrit en
    Avril 2016
    Messages
    721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Bidouilleur

    Informations forums :
    Inscription : Avril 2016
    Messages : 721
    Points : 503
    Points
    503
    Billets dans le blog
    1
    Par défaut
    Salut.

    Il suffit de définir y hors de ta fonction message_ecris, dans ta fonction message_ecris tu déclares y en global, et tu l'incrémentes après ta boucle range dans cette même fonction.
    Le temps ronge l'amour comme l'acide.

  3. #3
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2017
    Messages
    95
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 24
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2017
    Messages : 95
    Points : 80
    Points
    80
    Par défaut
    Ah ! Merci beaucoup !
    Mais avant que je clôture la chose, je voulais savoir à quoi servait le "Global", j'ai beau l'utiliser, je ne sais pas à quoi il sert.

    Merci encore !

  4. #4
    Membre confirmé

    Homme Profil pro
    Bidouilleur
    Inscrit en
    Avril 2016
    Messages
    721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Bidouilleur

    Informations forums :
    Inscription : Avril 2016
    Messages : 721
    Points : 503
    Points
    503
    Billets dans le blog
    1
    Par défaut
    Salut.

    En gros, global sert à pouvoir modifier la variable non locale de ta fonction depuis celle-ci.

    https://python.developpez.com/cours/...ge=page_9#L9-B
    Le temps ronge l'amour comme l'acide.

  5. #5
    Nouveau Candidat au Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Novembre 2021
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 20
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Novembre 2021
    Messages : 1
    Points : 1
    Points
    1
    Par défaut
    Citation Envoyé par bistouille Voir le message
    Salut.

    Il suffit de définir y hors de ta fonction message_ecris, dans ta fonction message_ecris tu déclares y en global, et tu l'incrémentes après ta boucle range dans cette même fonction.
    Salut ! je n'ai pas trop bien compris où est ce qu'il devait définir y et si il devait utiliser le y += 100

    Merci

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

Discussions similaires

  1. Souligner un mot dans tableau
    Par tatiak dans le forum VBA Word
    Réponses: 4
    Dernier message: 14/06/2009, 15h41
  2. [AIDE] Calcul dans un tableau (JSP+Struts)
    Par Diablo_22 dans le forum Servlets/JSP
    Réponses: 9
    Dernier message: 07/11/2008, 14h40
  3. Aide caractère "\" dans mon mot de passe BD Access 2000
    Par 810mcu dans le forum Bases de données
    Réponses: 7
    Dernier message: 06/06/2008, 13h22
  4. Réponses: 5
    Dernier message: 15/03/2007, 06h58
  5. Comment modifier la couleur d'un mot dans un tableau ?
    Par noxious dans le forum Composants VCL
    Réponses: 2
    Dernier message: 16/11/2005, 13h05

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