# -*- coding: utf-8 -*- """ Created on Thu Apr 2 11:41:03 2020 @author: bruno """ from tkinter import * def Deplacement(evenement): """permet de déplacer la balle avec comme paramétre evenenement : touche du clavier.""" dx=0 dy=0 Touche = evenement.keysym # on récupère dans Touche la touche du clavier frappée if Touche == 'Right' and zone.coords(balle)[0]<460: dx = 10 if Touche == 'Left' and zone.coords(balle)[0]>0: dx = -10 if Touche == '8' and zone.coords(balle)[1]>0: dy = -10 if Touche == 'Down'and zone.coords(balle)[1]<300: dy = 10 print(zone.coords(balle)) zone.move(balle, dx, dy) # deplace (ou translate) la balle du vecteur (dx,dy) #Création de la fenêtre: fenetre = Tk() fenetre.title('Mouvement balle avec les touches du clavier') #Création du canevas qu'on choisit d'appeler zone : zone = Canvas(fenetre, width = 480, height =320, bg ='green') #Marges: méthode grid() pour positionner un élément zone.grid(padx =10, pady =10) #Création de la balle de diamètre 20 avec un positionnement : balle = zone.create_oval(200,100,220,120,width=2,outline='white',fill='yellow') #Association du clavier à la fonction KeyBoard: zone.bind('',Deplacement) # On relie le canvas au clavier. zone.focus_force() #Un bouton quitter: Bouton_Quitter=Button(fenetre, text ='Quitter', command =fenetre.destroy).grid(padx=5,pady=5) #Lancement de la boucle principale: fenetre.mainloop() """ consigne : modifier et compléter les touches en y incluant les déplacements en diagonales """