La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

SEANCE 9 Python Interfaces graphiques Lycée Louis Vincent Lundi 13 janvier 2 0141.

Présentations similaires


Présentation au sujet: "SEANCE 9 Python Interfaces graphiques Lycée Louis Vincent Lundi 13 janvier 2 0141."— Transcription de la présentation:

1 SEANCE 9 Python Interfaces graphiques Lycée Louis Vincent Lundi 13 janvier

2 Contenu de la séance 9 : 2 Lundi 13 janvier La programmation objet Les CANEVAS. Méthodes Exemples Propriétés Gestion du clavier et de la souris. Exercices.

3 Le WIDGET CANVAS Le widget Canvas (canevas, en français) est une zone de dessin rectangulaire. Il permet de dessiner sur la fenêtre. L'angle haut gauche du canevas est l'origine des coordonnées (x,y)=(0,0). Quelques propriétés : height : Hauteur Y du canvas width : Largeur X du canvas bg : Couleur de fond du canvas bd : Taille en pixels du bord du canvas (2 par défaut) relief : Style de la bordure (flat (par défaut), raised, sunken, groove, ridge) Lundi 13 janvier

4 CANVAS Quelques méthodes : create_arc(x 1,y 1,x 2,y 2 ): Pour créer un arc de cercle create_line(x 1,y 1,x 2,y 2 ): Pour créer une ligne create_oval(x 1,y 1,x 2,y 2 ): Pour créer un cercle ou une ellipse create_rectangle(x 1,y 1,x 2,y 2 ): Pour créer un rectangle create_text(x,y): Texte create_image(x,y) :insertion dune image Exemple : cf. exCanvas_V3.py et exCanvas2_V3.py Résumé en français (pour v2.7) : Lundi 13 janvier

5 Exemple 1 : from tkinter import * Fenetre=Tk() #La fonction Tk() du module Tkinter Fenetre.title("Mon programme en Tkinter") # Donne un titre à la fenêtre (par défaut c'est Tk) # Dans Fenetre nous allons créer un objet type Canvas qui se nomme zone_dessin # Nous donnons des valeurs aux propriétés "width", "height", "bg", "bd", "relief" zone_dessin = Canvas(Fenetre,width=494,height=494,bg='yellow',bd=3,relief="ridge") zone_dessin.pack() #Affiche le Canvas #Nous allons maintenant utiliser quelques méthodes du widget "zone_dessin" zone_dessin.create_line(0,0,499,499,fill='red',width=4) # Dessine une ligne zone_dessin.create_line(0,499,499,0,fill='red',width=4) # Dessine une ligne zone_dessin.create_rectangle(150,150,350,350) # Dessine un carré zone_dessin.create_oval(150,150,350,350,fill='blue',width=4) # Dessine un cercle # boutons_sortir est un widget de type "Button" # dont nous définissons les propriétés "text" et "command") bouton_sortir= Button(Fenetre,text="Sortir",command=Fenetre.destroy) # la commande "destroy" appliquée à la fenêtre détruit l'objet "Fenetre" et clôture le programme bouton_sortir.pack() Fenetre.mainloop() Lundi 13 janvier

6 Exemple 2 : from tkinter import * racine=Tk() photo=PhotoImage(file= "andromede.gif") # creation d'un objet de la classe PhotoImage racine.geometry("800x600") #détermination de la taille de la fenêtre principale racine.title("800x600") fond=Canvas(racine, bg='blue',width=600,height=300) fond.pack(side=LEFT) for i in range (1,6): fond.create_line(i*100,0,i*100,300) for i in range (1,3): fond.create_line(0,i*100,600,i*100) img=fond.create_image(400,100,image=photo) racine.mainloop() Lundi 13 janvier

7 Changer les propriétés Dautre méthodes de Canvas dans le document. reference.htm Lundi 13 janvier MéthodesEffet : C.delete (item)Efface litem item du canvas C C.delete (ALL)Efface tout ce qui se trouve dans C C.coords (item,x 0,y 0 ) ou C.coords (item,x 1,y 1,x 2,y 2 ) Modifie les coordonnées de litem. Cela permet de faire des déplacements C.itemconfig (item,options)Permet de modifier les options de item C.itemcget (item,options)Renvoie la valeur de la propriété

8 Méthode place () place() : Place les objets à une position définie par des coordonnées. Exemple : L=Label(text="premiere ligne" ) L.place(x=10,y=50) Pour effacer un objet, utiliser les méthodes place_forget(),grid_forget() ou pack_forget() Lundi 13 janvier

9 Gestion du clavier et souris La méthode bind () permet dexécuter une fonction quand un événement est détecté par un composant Obj.bind(evt, fct) obj : identificateur de lobejt devant intercepter lévénement evt. fct est appelée lorsque lévénement survient, elle a un paramètre de type Event. La fonction appelée est de la forme def fct (evt): Lundi 13 janvier

10 Gestion du clavier et souris Les types dévénements : : Intercepter la pression de nimporte quelle touche du clavier. : Intercepter la pression dun bouton de la souris. i doit être remplacé par 1,2,3. : Intercepter le relâchement dun bouton de la souris. : Intercepter la double pression dun bouton de la souris. : Intercepter le mouvement de la souris, dès que le curseur bouge, la fonction liée à lévénement est appelée. : Intercepter un événement correspondant au fait que le curseur de la souris entre la zone graphique de lobjet. : Intercepter un événement correspondant au fait que le curseur de la souris sorte la zone graphique de lobjet. Lundi 13 janvier

11 Gestion du clavier : Lobjet evt que lon récupère lors dune action au clavier, peut aussi renvoyer dautres informations : Lundi 13 janvier Propriété :Retour : evt.charRenvoie le caractère correspondant à la touche enfoncée. evt.keysymRenvoie une chaîne de caractères contenant le symbole correspondant à la touche enfoncée. evt.keycodeRenvoie un entier contenant le code correspondant à la touche enfoncée. evt.widgetRenvoie le widget sur lequel laction a été déclenchée.

12 Gestion du clavier Exemple 3 : from tkinter import * def touche (evt): print("Vous avez appuyé sur la touche :",evt.char) print("Vous avez appuyé sur la touche :",evt.keysym) print("Vous avez appuyé sur la touche :",evt.keycode) fenetre=Tk() fenetre.bind(' ',touche) fenetre.mainloop() Lundi 13 janvier


Télécharger ppt "SEANCE 9 Python Interfaces graphiques Lycée Louis Vincent Lundi 13 janvier 2 0141."

Présentations similaires


Annonces Google