##----- Importation des Modules -----##
from tkinter import *
##----- Variables globales -----##
##----- Définition des Fonctions -----##
def haut(event):									# Paramètre indispensable
	global cercle									# Variable globale (pas indispensable : c'est un objet...)
	v = dessin.coords(cercle)						# liste des coordonnées des "coins"
	v[1] = v[1] - 10 								# Modification des ordonnées
	v[3] = v[3] - 10
	dessin.coords(cercle, v[0], v[1], v[2], v[3])	# On « retrace » le cercle ailleurs
##----- Création de la fenêtre -----##
fen = Tk()
fen.title('Un cercle malicieux')
##----- Création des boutons -----##
bouton_quitter = Button(fen, text='Quitter', command=fen.destroy)
bouton_quitter.grid(row=2, column=1, padx=3, pady=3, sticky=S+W+E)
##----- Création du canevas -----##
dessin=Canvas(fen, bg="white", width=501, height=501)
dessin.grid(row = 1, column = 0, columnspan = 2, padx=5, pady=5)
##----- Objets graphiques -----##
r = 30
cercle = dessin.create_oval(250-r, 250-r, 250+r, 250+r, width=2)
##----- Programme principal -----##
fen.bind('<Key-Up>', haut)
fen.mainloop()                     # Boucle d'attente des événements
						
					 
					
					
						
##----- Importation des Modules -----##
from tkinter import *
##----- Variables globales -----##
##----- Définition des Fonctions -----##
def haut(event):									# Paramètre indispensable
	global cercle									# Variable globale (pas indispensable : c'est un objet...)
	v = dessin.coords(cercle)						# liste des coordonnées des "coins"
	v[1] = v[1] - 10 								# Modification des ordonnées
	v[3] = v[3] - 10
	dessin.coords(cercle, v[0], v[1], v[2], v[3])	# On « retrace » le cercle ailleurs
def bas(event):
	global cercle
	v = dessin.coords(cercle)
	v[1] = v[1] + 10 								# Modification des ordonnées
	v[3] = v[3] + 10
	dessin.coords(cercle, v[0], v[1], v[2], v[3])
def gauche(event):
	global cercle
	v = dessin.coords(cercle)
	v[0] = v[0] - 10 								# Modification des abscisses
	v[2] = v[2] - 10
	dessin.coords(cercle, v[0], v[1], v[2], v[3])
def droite(event):
	global cercle
	v = dessin.coords(cercle)
	v[0] = v[0] + 10 								# Modification des abscisses
	v[2] = v[2] + 10
	dessin.coords(cercle, v[0], v[1], v[2], v[3])
##----- Création de la fenêtre -----##
fen = Tk()
fen.title('Un cercle malicieux')
##----- Création des boutons -----##
bouton_quitter = Button(fen, text='Quitter', command=fen.destroy)
bouton_quitter.grid(row=2, column=1, padx=3, pady=3, sticky=S+W+E)
##----- Création du canevas -----##
dessin=Canvas(fen, bg="white", width=501, height=501)
dessin.grid(row = 1, column = 0, columnspan = 2, padx=5, pady=5)
##----- Objets graphiques -----##
r = 30
cercle = dessin.create_oval(250-r, 250-r, 250+r, 250+r, width=2)
##----- Programme principal -----##
fen.bind('<Key-Up>', haut)
fen.bind('<Key-Down>', bas)
fen.bind('<Key-Left>', gauche)
fen.bind('<Key-Right>', droite)
fen.mainloop()                     # Boucle d'attente des événements
						
					 
					
					
						
##----- Importation des Modules -----##
from tkinter import *
from random import *
##----- Variables globales -----##
coul = ['black', 'red', 'blue', 'green', 'purple', 'yellow', 'orange']
##----- Définition des Fonctions -----##
def haut(event):									# Paramètre indispensable
	global cercle									# Variable globale (pas indispensable : c'est un objet...)
	v = dessin.coords(cercle)						# liste des coordonnées des "coins"
	v[1] = v[1] - 10 								# Modification des ordonnées
	v[3] = v[3] - 10
	dessin.coords(cercle, v[0], v[1], v[2], v[3])	# On « retrace » le cercle ailleurs
def bas(event):
	global cercle
	v = dessin.coords(cercle)
	v[1] = v[1] + 10 								# Modification des ordonnées
	v[3] = v[3] + 10
	dessin.coords(cercle, v[0], v[1], v[2], v[3])
def gauche(event):
	global cercle
	v = dessin.coords(cercle)
	v[0] = v[0] - 10 								# Modification des abscisses
	v[2] = v[2] - 10
	dessin.coords(cercle, v[0], v[1], v[2], v[3])
def droite(event):
	global cercle
	v = dessin.coords(cercle)
	v[0] = v[0] + 10 								# Modification des abscisses
	v[2] = v[2] + 10
	dessin.coords(cercle, v[0], v[1], v[2], v[3])
def change(event):
	global cercle, coul				# Variables globales
	v = choice(coul)				# choix d'une couleur au hasard
	dessin.itemconfigure(cercle, outline=v)
##----- Création de la fenêtre -----##
fen = Tk()
fen.title('Un cercle malicieux')
##----- Création des boutons -----##
bouton_quitter = Button(fen, text='Quitter', command=fen.destroy)
bouton_quitter.grid(row=2, column=1, padx=3, pady=3, sticky=S+W+E)
##----- Création du canevas -----##
dessin=Canvas(fen, bg="white", width=501, height=501)
dessin.grid(row = 1, column = 0, columnspan = 2, padx=5, pady=5)
##----- Objets graphiques -----##
r = 30
cercle = dessin.create_oval(250-r, 250-r, 250+r, 250+r, width=2)
##----- Programme principal -----##
fen.bind('<Key-Up>', haut)
fen.bind('<Key-Down>', bas)
fen.bind('<Key-Left>', gauche)
fen.bind('<Key-Right>', droite)
fen.bind('<space>', change)
fen.mainloop()                     # Boucle d'attente des événements
						
					 
					
					
						
##----- Importation des Modules -----##
from tkinter import *
from random import *
##----- Variables globales -----##
coul = ['black', 'red', 'blue', 'green', 'purple', 'yellow', 'orange']
r = 30												# Rayon du cercle
dim = 500											# Dimensions du canevas carré
##----- Définition des Fonctions -----##
def haut(event):
	global cercle, r
	v = dessin.coords(cercle)
	if v[1] > 10:
		v[1] = v[1] - 10 							# Modification des ordonnées
		v[3] = v[3] - 10
		dessin.coords(cercle, v[0], v[1], v[2], v[3])
def bas(event):
	global cercle, r
	v = dessin.coords(cercle)
	if v[3] < dim-10:
		v[1] = v[1] + 10 							# Modification des ordonnées
		v[3] = v[3] + 10
		dessin.coords(cercle, v[0], v[1], v[2], v[3])
def gauche(event):
	global cercle, r
	v = dessin.coords(cercle)
	if v[0] > 10:
		v[0] = v[0] - 10 							# Modification des abscisses
		v[2] = v[2] - 10
		dessin.coords(cercle, v[0], v[1], v[2], v[3])
def droite(event):
	global cercle, r
	v = dessin.coords(cercle)
	if v[2] < dim-10:
		v[0] = v[0] + 10 							# Modification des abscisses
		v[2] = v[2] + 10
		dessin.coords(cercle, v[0], v[1], v[2], v[3])
def change(event):
	global cercle, coul				# Variables globales
	v = choice(coul)				# choix d'une couleur au hasard
	dessin.itemconfigure(cercle, outline=v)
##----- Création de la fenêtre -----##
fen = Tk()
fen.title('Un cercle malicieux')
##----- Création des boutons -----##
bouton_quitter = Button(fen, text='Quitter', command=fen.destroy)
bouton_quitter.grid(row=2, column=1, padx=3, pady=3, sticky=S+W+E)
##----- Création du canevas -----##
dessin=Canvas(fen, bg="white", width=dim+1, height=dim+1)
dessin.grid(row = 1, column = 0, columnspan = 2, padx=5, pady=5)
##----- Objets graphiques -----##
cercle = dessin.create_oval(dim/2-r, dim/2-r, dim/2+r, dim/2+r, width=2)
##----- Programme principal -----##
fen.bind('<Key-Up>', haut)
fen.bind('<Key-Down>', bas)
fen.bind('<Key-Left>', gauche)
fen.bind('<Key-Right>', droite)
fen.bind('<space>', change)
fen.mainloop()                     # Boucle d'attente des événements