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 8 Python Interfaces graphiques Lycée Louis Vincent Lundi 16 décembre 20131.

Présentations similaires


Présentation au sujet: "SEANCE 8 Python Interfaces graphiques Lycée Louis Vincent Lundi 16 décembre 20131."— Transcription de la présentation:

1 SEANCE 8 Python Interfaces graphiques Lycée Louis Vincent Lundi 16 décembre 20131

2 Contenu de la séance 8 : 2 Lundi 16 décembre 2013 La programmation objet Les widgets. Les labels. Les zones de saisie. Les boutons.

3 Interfaces graphiques Elles permettent de rendre les programmes plus conviviaux. Une interface graphique est constituée de composants (ou encore widgets) qui sont la source dévènements. Le déroulement dun programme avec interface graphique est différent des programmes vus jusquà présent. Composants ou widgets : ce sont des boutons, zones de saisie, zones de dessin, labels, listes déroulantes, boîtes à cocher, bouton radio … Un évènement : clic sur un bouton de la souris, saisie dun texte, toucher Entrée, flèches du clavier … Lundi 16 décembre

4 Interfaces graphiques et Python Plusieurs librairies (modules) en python sont disponibles pour réaliser des interfaces graphiques : tkinter (python version 3) Tkinter (version 2) wxPython Plus complexe et complet que tkinter pyQT, pyGTK Pygame introduction-to-tkinter.pdfwww.pythonware.com/media/data/an- introduction-to-tkinter.pdf Lundi 16 décembre

5 Les widgets A chaque widget correspond une classe Instanciation de lobjet avec une méthode constructeur (commence par une majuscule et porte le nom de la classe du widget, plusieurs existent par widget) Ajout de lobjet à linterface (ie à la fenêtre racine) avec la méthode pack Des méthodes communes à tous les widgets : pack(), grid(),place(),config(),... Lundi 16 décembre

6 La fenêtre racine Squelette du programme construisant une interface graphique (IG) From tkinter import *# pour la version 3 de Python # et Tkinter pour la version 2 fen=Tk() # création de la fenêtre principale et affectation de linstance dans la variable fen Ajout des différents widgets fen.mainloop() #Affiche la fenêtre pricipale et provoque le démarrage du réceptionnaire d'événement qui se met à l'écoute des événements pouvant survenir dans la fenêtre issus de différents widgets Lundi 16 décembre

7 Les labels : classe Label Ils sont utilisés pour afficher des textes et des images. Quelques propriétés pouvant être initialisées à lappel du constructeur Label (…) : text=" texte du balel", bg=" couleur de fond", fb =" couleur du texte",db=bordure, width =largeur, height=hauteur,... Exemple : exLabel_V3.py from tkinter import * fen=Tk() obj=Label(text= "zone de txt",bg= "blue",fg= "yellow",bd=3) obj.pack() obj2=Label(bitmap= "question",bg= "red",fg= "grey",bd=5) obj2.pack() fen.mainloop() Lundi 16 décembre

8 Les zones de saisie : classe Entry Lundi 16 décembre Elles sont utilisées pour la saisie de textes par lutilisateur. Quelques propriétés pouvant être initialisées à lappel du constructeur Entry (…) : bg=" couleur de fond", fb=« couleur du texte",db=bordure, width =largeur en caractères de la zone de saisie … Une méthode : get() : permet dobtenir le contenu de la zone de saisie, renvoie une chaîne Exemple : exEntry_V3.py

9 La classe Entry : Lundi 16 décembre from tkinter import * fen=Tk() obj=Label(text="zone de saisie :") obj.pack() obj2=Entry(bg="grey",fg="blue",width=55) obj2.insert(0,"Le chat est dans le grenier") ch=obj2.get() print (ch) obj2.insert(16," le jardin ou") ch=obj2.get() print (ch) obj2.delete(27,55) obj2.pack() ch=obj2.get() print (ch) fen.mainloop()

10 Les boutons : classe Button Lundi 16 décembre ils sont utilisés pour insérer des boutons dans une interface graphique. Un bouton est relié à une action ! Quelques propriétés pouvant être initialisées à lappel du constructeur Button (…) : text=" texte du bouton", bg=" couleur de bouton", fb=" couleur du texte",image (image sur le bouton), command =pour associer une fonction au bouton Une méthode : invoke() : permet de rappeler la commande associée au bouton Exemple : exButton_V3.py

11 La classe Button : Lundi 16 décembre from tkinter import * #FONCTIONS def plus(): global nb nb=nb+1 l.config(text=nb) l.pack() #PROGRAMME PRINICIPAL fen=Tk() nb=0 l=Label(text=nb) l.pack() b=Button(text= "Incrémenter",command=plus) b.pack() fen.mainloop() #Affiche la fenêtre pricipale et provoque le démarrage du gestionnaire


Télécharger ppt "SEANCE 8 Python Interfaces graphiques Lycée Louis Vincent Lundi 16 décembre 20131."

Présentations similaires


Annonces Google