Bonjour à tous !
Mon fils vient de se mettre au Python (livre Python pour les kids trouver dans sa bibliothèque au collège)... donc du coup je dois m'y mettre
Le programme est le suivant :
Bon pour tout dire je ne comprends pas tout notamment la raison des différents paramètre canvas et le self.canvas=canvas le self.id=canvas le canvas en paramètre, le canvas que l'on crée le canvas qu'on envoie à la classe etc.
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 from tkinter import * import random import time class Balle: def _init_(self, canvas,couleur): self.canvas=canvas self.id=canvas.create_oval(10, 10, 25, 25, fill=couleur) self.canvas.move(self.id, 245, 100) def dessiner(self): pass tk = Tk() tk.title('Jeu') tk.resizable(0, 0) tk.wm_attributes("-topmost", 1) canvas = Canvas(tk, width=500, height=400, bd=0, highlightthickness=0) canvas.pack() tk.update() balle=Balle(canvas,'red') while 1: balle.dessiner() tk.update_idletasks() tk.update() time.sleep(0.01) tk.update()
Mais là n'est pas l'essentiel. Bref lorsque je fais f5 dans le shell le message suivant apparait :
Traceback (most recent call last):
File "E:\ping_pong.py", line 21, in <module>
balle=Balle(canvas,'red')
TypeError: object() takes no parameters
Bizarre car normalement la classe Balle prend bien deux paramètres
Bref si quelqu'un peu m'aider et m'indiquer où il y a une erreur... merci d'avance !!!
Partager