Partage
  • Partager sur Facebook
  • Partager sur Twitter

probleme de bouton tk python

    23 avril 2016 à 19:45:05

    Bonjour,

    Je debute en python et apres quelques heures de test je me tourne vers vous.

    En effet je n'arrive pas a utiliser les boutons.

    Mes regles marchent mais l'affichage ne se met pas a jour.

    Auriez vous une solution ?

    Merci d'avance.

    #import et var
    from tkinter import *
    fenetre = Tk()
    fenetre.title('Le jeu de la vie')
    import random
    table= [0 for i in range(0,30)]

    # Génération d'une matrice aléatoire avec au plus 6 1
    def matrice_alea():
        M = [[0 for i in range(0,30)] for j in range(0,30)]
        for k in range(500):
            M[random.randint(0,29)][random.randint(0,29)]=1
        return(M)
    #enregistrement dans une variable
    matrix=matrice_alea()

    #compteur de vivant
    def compteur(M):
        a=0
        for i in range(0,30):
            for j in range(0,30):
                if M[i][j]==1:
                    a=a+1
                else : a=a
        return(a)

    #compteur de voisin
    def compteurV(i,j,M):
        a=0
        if M[i][j]==1:
            if M[i+1][j]==1:
                a=a+1
            else :    a=a
            if M[i-1][j]==1:
                a=a+1
            else :    a=a
            if M[i][j+1]==1:
                a=a+1
            else :    a=a
            if M[i][j-1]==1:
                a=a+1
            else :    a=a
            if M[i+1][j+1]==1:
                a=a+1
            else :    a=a
            if M[i+1][j-1]==1:
                a=a+1
            else :    a=a
            if M[i-1][j+1]==1:
                a=a+1
            else :    a=a
            if M[i-1][j-1]==1:
                a=a+1
            else :    a=a
        else :    a=a
        return(a)
    #rentrer la matrice dans un tableau pour la mise en label
    def affmatrice(M):
        i=0
        for ligne in M:
            table[i]=ligne
            i=i+1   
    #premier enregistrment de la matrice dans un tableau
    affmatrice(matrix)

    #regle 1
    def regle1():
        M=matrix
        for i in range(0,29):
            for j in range(0,29):
                N=compteurV(i,j,M)
                if M[i][j] == 1 and N < 2:
                    M[i][j] = 0
        x=0
        for ligne in M:
            table[x]=ligne
            x=x+1   
        M=matrix


    #regle 2
    def regle2():
        M=matrix
        for i in range(0,29):
            for j in range(0,29):
                N=compteurV(i,j,M)
                if M[i][j] == 1 and N > 3:
                    M[i][j] = 0
        x=0
        for ligne in M:
            table[x]=ligne
            x=x+1   
        M=matrix
    #regle 3
    def regle3():
        M=matrix
        for i in range(0,29):
            for j in range(0,29):
                N=compteurV(i,j,M)
                if M[i][j] == 1 and N == 3 and N == 2:
                    M[i][j] = 1
        x=0
        for ligne in M:
            table[x]=ligne
            x=x+1
        M=matrix

    #regle 4
    def regle4():
        M=matrix
        for i in range(0,29):
            for j in range(0,29):
                N=compteurV(i,j,M)
                if M[i][j] == 0 and N == 3:
                    M[i][j] = 1
        x=0
        for ligne in M:
            table[x]=ligne
            x=x+1
        M=matrix
    #regle 5
    def regle5():
        M=matrix


    #affichage boutons

    b1 = Button(fenetre, text="Mort de solitude" , command = regle1)
    b1.pack()
    b2 = Button(fenetre, text="Mort par asphyxie", command=regle2)
    b2.pack()
    b3 = Button(fenetre, text="Toute cellule avec 2 ou 3 voisins survit.", command=regle3)
    b3.pack()
    b4 = Button(fenetre, text="Naissance", command=regle4)
    b4.pack()
    b5 = Button(fenetre, text="regle 5", command=regle5)
    b5.pack()




    #affichage matrice

    for i in range(0,30):
        label=Label(fenetre, text=table[i])
        label.pack()
     
       
    fenetre.mainloop()

    • Partager sur Facebook
    • Partager sur Twitter

    probleme de bouton tk python

    × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
    × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
    • Editeur
    • Markdown