[Python] problème de classe
Nefertari
-
dodoecchi Messages postés 454 Date d'inscription Statut Membre Dernière intervention -
dodoecchi Messages postés 454 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Voici un bout de code tout simple, mais qui ne veut pas marcher :-(
Quelqu'un pourrait-il m'aider ??
Sans classe tout va pourtant bien :'(
Merci...
Voici un bout de code tout simple, mais qui ne veut pas marcher :-(
#-*- coding: utf-8 -*- from Tkinter import * class Fond(object): "s'occupe de l'arrière plan du jeu" def __init__(self,taille_case=30,couleur='white'): self = Tk() self.taille = taille_case #définit la taille des cases self.couleur = couleur #définit la couleur des cases def grille(self,x,y): "Dessine la grille" taille_case=self.taille canvas = Canvas(self, width =x*taille_case+4, height=y*taille_case+4) i = 0 while i < x: j = 0 while j < y: canvas.create_rectangle((i*taille_case)+2,(j*taille_case)+2, ((i+1)*taille_case)+2 , ((j+1)*taille_case)+2, fill=self.couleur) j+=1 i+=1 canvas.pack() if __name__=='__main__': root = Fond() root.grille(10,10) root.mainloop()
Quelqu'un pourrait-il m'aider ??
Sans classe tout va pourtant bien :'(
Merci...
A voir également:
- [Python] problème de classe
- Citizen code python avis - Accueil - Outils
- Logiciel de classement de photos gratuit - Guide
- \R python ✓ - Forum Python
- Retrouver la liste des élèves d'une classe - Forum Discussions générales
- Mot secret python pix ✓ - Forum Python
1 réponse
ça ça marche, mais je suis pas convaincu que c'est la meilleure solution:
#-*- coding: utf-8 -*- from Tkinter import * class Fond(object): "s'occupe de l'arrière plan du jeu" def __init__(self,taille_case=30,couleur='white'): self.R = Tk() self.taille = taille_case #définit la taille des cases self.couleur = couleur #définit la couleur des cases def grille(self,x,y): "Dessine la grille" taille_case=self.taille canvas = Canvas(self.R, width =x*taille_case+4, height=y*taille_case+4) i = 0 while i < x: j = 0 while j < y: canvas.create_rectangle((i*taille_case)+2,(j*taille_case)+2, ((i+1)*taille_case)+2 , ((j+1)*taille_case)+2, fill=self.couleur) j+=1 i+=1 canvas.pack() if __name__=='__main__': root = Fond() root.grille(10,10) root.R.mainloop()