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
| from tkinter import *
from random import randrange
from math import sin, cos
def move():
global x, y, flag, dx, dy, vx, ms # x, y = coordonnées / dx, dy = vitesse en x et en y / flag = signal qui dit au balle de s'arrêter / vx = angle de la balle
if x > 1175 or x < 20: # coordonnées comprise entre 1175 en abscisse...
dx = -dx
vx = -vx
x += dx
x += vx
if y > 640 or y < 20: # ...et 640 en ordonnée
dy = -dy
y += dy
can.coords(ball, x-10, y-10, x+10, y+10) #coordonnnées de la balle
if flag > 0:
fen.after(ms, move)
def start():
global flag, ms
flag += 1
if flag == 1:
ms = 6
move()
def stop():
global flag, score
flag = 0
score = 0
# Création des variables:
flag = 0
dx, dy = 4, 4
vx = cos(1)
ms = 6
# Création de la fenêtre:
fen = Tk()
fen.title("1er test aléatoire")
# Création du canevas:
Largeur = 1200
Hauteur = 650
can = Canvas(fen,width=Largeur,height=Hauteur,bg ='white')
can.grid(row= 2, column= 0)
# Création du nombre alétoire de balle:
for iblue in range(5): # création d'un nombre aléatoire de balle bleue
x, y = randrange(1180), randrange(640)
ball = can.create_oval(x-10, y-10, x+10, y+10, outline= "black", fill= "royalblue")
for ired in range(5): # création d'un nombre aléatoire de balle rouge
x, y = randrange(1180), randrange(640)
ball = can.create_oval(x-10, y-10, x+10, y+10, outline= "black", fill= "red")
carre_red = can.create_rectangle(Largeur-1195, Hauteur-645, Largeur-1185, Hauteur-5, outline= "darkred", width = 2, fill= 'red')
carre_bleu = can.create_rectangle(Largeur-5, Hauteur-645, Largeur-15, Hauteur-5, outline= "dark blue", width = 2, fill= 'royalblue')
carre_noir_haut = can.create_rectangle(Largeur-605, Hauteur-320, Largeur-595, Hauteur-5, outline= "maroon", width = 2, fill= 'gray')
carre_noir_bas = can.create_rectangle(Largeur-605, Hauteur-650, Largeur-595, Hauteur-400, outline= "maroon", width = 2, fill= 'gray')
# Création des boutons:
# Création du bouton "Débuter la Partie":
Button(fen, text= "Lancer !", command= start).grid(row= 0, column= 0)
# Création du bouton "Arrêter la Partie":
Button(fen, text= "Stopper !", command= stop).grid(row= 1, column= 0)
fen.mainloop()
fen.destroy() |
Partager