Vous êtes sur la page 1sur 17

La bibliothèque tkinter

La bibliothèque tkinter
Tkinter est un module composé de plusieurs éléments graphiques
produisant une représentation graphique d’un programme informatique.

Création d’une fenêtre :


Importation du module tkinter :
En premier temps, pour pouvoir utiliser les éléments et les fonctionnalités
de ce module, il va falloir l’importer avec ses éléments :

# L'importation de l’ensemble des éléments du paquet tkinter :


from tkinter import *
L'opérateur * permet d'importer l’ensemble des éléments du module.

Création et affichage de la fenêtre principale :

Création d’une fenêtre :

En utilisant la classe Tk importée du module tkinter, on crée un objet qui


va représenter la fenêtre principale de notre application :

# L'importation de l’ensemble des éléments du paquet tkinter :


from tkinter import *
# Création d'une fenêtre avec la classe Tk :
fenetre = Tk()

Affichage d’une fenêtre :

D’autre part, pour afficher cette fenêtre qu’on a créé, on utilise la


méthode mainloop() tel que :
Syntaxe :

from tkinter import *


# Création d'une fenêtre avec la classe Tk :
fenetre = Tk()
# Affichage de la fenêtre créée :
fenetre.mainloop()

1
La bibliothèque tkinter

Résultat d’exécution :

Personnaliser la fenêtre principale :


Ajouter un titre :

Pour ajouter un titre à la fenêtre principale, on utilise la


méthode title()
Exemple :

from tkinter import *


# Création d'une fenêtre avec la classe Tk :
fenetre = Tk()
# Ajout d'un titre à la fenêtre principale :
fenetre.title("Mon application")
# Affichage de la fenêtre créée :
fenetre.mainloop()

2
La bibliothèque tkinter

Ajouter une icône :

Afin de définir un logo personnalisé à la fenêtre principale, on


utilise la méthode iconbitmap().
Notez bien : on doit avoir une image avec l’extension .ico , et
l’ajouter dans le dossier de notre programme.
Exemple :

En prenant comme exemple le logo suivant : , on l’introduit à


notre application tel que :
Syntaxe :

from tkinter import *


# Création d'une fenêtre avec la classe Tk :
fenetre = Tk()
# Ajout d'un titre à la fenêtre principale :
fenetre.title("Mon application")
# Définir un icone :
fenetre.iconbitmap("logo.ico")
# Affichage de la fenêtre créée :
fenetre.mainloop()

3
La bibliothèque tkinter

Configurer l’arrière-plan de la fenêtre principale :

Pour configurer un aspect tel que la couleur de l’arrière-plan, on


utilise la méthode config(), contenant comme argument, le
paramètre bg ou background qu’on lui affecte la valeur de la
couleur tel que bg = ‘red’ ou bg = ‘blue’ ou le code hexadécimal
de la couleur tel que : bg = ‘#808000’ pour la couleur jaune ou bg
= ‘#87CEEB’ pour la couleur bleu ciel.

Exemple :

Syntaxe :
from tkinter import *
# Création d'une fenêtre avec la classe Tk :
fenetre = Tk()
# Ajout d'un titre à la fenêtre principale :
fenetre.title("Mon application")
# Définir un icone :
fenetre.iconbitmap("logo.ico")
# Personnaliser la couleur de l'arrière-plan de
la fenêtre principale :
fenetre.config(bg = "#87CEEB")
# Affichage de la fenêtre créée :
fenetre.mainloop()
4
La bibliothèque tkinter

Résultat d’exécution :

Personnaliser les dimensions par défaut d’affichage de la


fenêtre principale :

Pour personnaliser la taille d’affichage par défaut de la fenêtre


principale, on utilise la méthode geometry(), en ayant comme
attribut la largeur x la hauteur en pixels.

Exemple :

# L'importation de l’ensemble des éléments du


paquet tkinter :
from tkinter import *
# Création d'une fenêtre avec la classe Tk :
fenetre = Tk()
# Ajout d'un titre à la fenêtre principale :
fenetre.title("Mon application")
# Définir un icone :
fenetre.iconbitmap("logo.ico")
# Personnaliser la couleur de l'arrière-plan de
la fenêtre principale :
fenetre.config(bg = "#87CEEB")
# Définir les dimensions par défaut la fenêtre
principale :
fenetre.geometry("640x480")

5
La bibliothèque tkinter

# Affichage de la fenêtre créée :


fenetre.mainloop()
Résultat d’exécution :
Lors de l’appel de l’application, elle s’affichera par défaut en
ayant les dimensions 640x480 pixels :

Limiter les dimensions d’affichage de la fenêtre principale :

Afin de personnaliser la limite de la taille maximale et minimale


dont la fenêtre principale doit s’afficher, on utilise les
méthodes minsize() pour la taille minimale et maxsize() pour la
taille maximale ayant comme premier attribut la largeur en pixels,
et comme deuxième attribut la hauteur en pixels.

6
La bibliothèque tkinter

Exemple :

from tkinter import *


# Création d'une fenêtre avec la classe Tk :
fenetre = Tk()
# Ajout d'un titre à la fenêtre principale :
fenetre.title("Mon application")
# Définir un icone :
fenetre.iconbitmap("logo.ico")
# Personnaliser la couleur de l'arrière-plan de
la fenêtre principale :
fenetre.config(bg = "#87CEEB")
# Définir les dimensions par défaut la fenêtre
principale :
fenetre.geometry("640x480")
# Limiter les dimensions d’affichage de la
fenêtre cprinipale :
fenetre.maxsize(800,600)
fenetre.minsize(300,400)
# Affichage de la fenêtre créée :
fenetre.mainloop()
Résultat d’exécution :
Dans ce cas la taille minimale de notre application sera telle que :

7
La bibliothèque tkinter

Ajouter des widgets :


Le module tkinter sur Python comporte plusieurs widgets qui sont
des composants graphiques qu’on peut ajouter à notre fenêtre
tels que : des boutons « Button », des cases à cocher
« Checkbutton », des boutons radio « Radiobutton », des textes
ou images « Label » , des listes « Listbox », des cadres
« Frame », un bouton de menu « Menubutton », une barre de
menu « Menu », des entrées d’utilisateur « Entry », des barres
de défilement « Scrollbar », … etc.
Chacun de ces widgets comporte des paramètres permettant de
personnaliser leurs couleurs de l’arrière-plan ou du texte, leurs
dimensions, la police de leurs caractères... etc.
Ainsi, pour les organiser et les placer, on utilise une des
méthodes suivantes :
 ·pack() qui permet d’organiser et placer des widgets en blocs.

8
La bibliothèque tkinter

 ·place() qui permet d’organiser et placer des widgets dans un


endroit précisé.

On va présenter les widgets les plus utilisés.


Ajouter un texte « Label » :
Le widget « Label » sert à implémenter une zone sur laquelle on
peut placer un texte ou une image, et sa syntaxe s’écrit sous la
forme :
texte1 = Label (fenetre, les options du widget Label)

Exemple :

# L'importation de l’ensemble des éléments du


paquet tkinter :
from tkinter import *
# Création d'une fenêtre avec la classe Tk :
fenetre = Tk()
# Ajout d'un texte dans la fenêtre :
texte1 = Label (fenetre, text = "Ceci est un Label")
texte1.pack()
# Affichage de la fenêtre créée :
fenetre.mainloop()
Résultat d’exécution :

Ajouter un bouton « Button » :


Le widget « Button » sert à implémenter un bouton sur lequel on
peut placer un texte, et on peut aussi lier une fonction qui sera
appelée lorsque le bouton est cliqué, et sa syntaxe s’écrit sous la
forme :
from tkinter import *
# Création d'une fenêtre avec la classe Tk :
9
La bibliothèque tkinter

fenetre = Tk()
# Ajout d'un bouton dans la fenêtre :
bouton1 = Button (fenetre, text = "Cliquez ici")
bouton1.pack()
# Affichage de la fenêtre créée :
fenetre.mainloop()
Résultat d’exécution :

Ajouter un cadre « Frame » :


Le widget « Frame » sert à créer un cadre ou une zone sur
laquelle on peut placer, grouper et organiser d’autres widgets, et
sa syntaxe s’écrit sous la forme :
Cadre1 = Frame (fenetre, les options du widget
Frame)

Exemple :

# L'importation de l’ensemble des éléments du


paquet tkinter :
from tkinter import *
# Création d'une fenêtre avec la classe Tk :
fenetre = Tk()
# Création d'un cadre dans la fenêtre :
cadre1 = Frame(fenetre)
cadre1.pack()
# Ajout de boutons dans le cadre :
bouton1 = Button (cadre1, text = "bouton1")
bouton2 = Button (cadre1, text = "bouton2")
10
La bibliothèque tkinter

bouton3 = Button (cadre1, text = "bouton3")


bouton1.pack()
bouton2.pack()
bouton3.pack()
# Affichage de la fenêtre créée :
fenetre.mainloop()
Résultat d’exécution :

Ajouter un champ de saisie de l’utilisateur « Entry » :


Le widget « Entry » sert à implémenter un champ sur lequel
l’utilisateur peut saisir un texte.

entrée1 = Entry (fenetre, les options du widget


Entry)

Exemple :

from tkinter import *


# Création d'une fenêtre avec la classe Tk :
fenetre = Tk()
# Création d'un champ de saisie de l'utilisateur
dans la fenêtre :
entree1 = Entry (fenetre)
entrée1.pack()

11
La bibliothèque tkinter

# Affichage de la fenêtre créée :


fenetre.mainloop()
Résultat d’exécution :

Ajouter des cases à cocher « Checkbutton » :


Le widget « Checkbutton » sert à afficher un certain nombre
d'options sous forme de cases à cocher que l'utilisateur peut en
sélectionner plusieurs, et sa syntaxe s’écrit sous la forme :
case_cocher1 = Checkbutton (fenetre, les options
du widget Checkbutton)

Exemple :

from tkinter import *


# Création d'une fenêtre avec la classe Tk :
fenetre = Tk()
# Création des cases à cocher "Checkbutton" dans la
fenêtre :
case_cocher1 = Checkbutton (fenetre, text = "choix 1")
case_cocher2 = Checkbutton (fenetre, text = "choix 2")
case_cocher3 = Checkbutton (fenetre, text = "choix 3")
case_cocher1.pack()
case_cocher2.pack()
case_cocher3.pack()
# Affichage de la fenêtre créée :
fenetre.mainloop()
Résultat d’exécution :

12
La bibliothèque tkinter

Ajouter des boutons radio « RadioButton » :


Le widget « Radiobutton » sert à afficher un certain nombre
d'options sous forme de cases à cocher que l'utilisateur peut en
sélectionner qu’une seule, et sa syntaxe s’écrit sous la forme :
case_radio = RadioButton (fenetre, les options
du widget RadioButton)

Exemple :

Syntaxe :
python
# L'importation de l’ensemble des éléments du
paquet tkinter :
from tkinter import *
# Création d'une fenêtre avec la classe Tk :
fenetre = Tk()
# Création des cases à cocher "Radiobutton" dans
la fenêtre :
case_cocher1 = Radiobutton (fenetre, text = "choix 1")
case_cocher2 = Radiobutton (fenetre, text = "choix 2")
case_cocher3 = Radiobutton (fenetre, text = "choix 3")
case_cocher1.pack()
case_cocher2.pack()
case_cocher3.pack()
# Affichage de la fenêtre créée :
fenetre.mainloop()

13
La bibliothèque tkinter

Résultat d’exécution :

Ajouter des listes « Listbox » :


Le widget « Listbox » sert à fournir à l'utilisateur une liste
d’options, et sa syntaxe s’écrit sous la forme :

liste1 = Listbox (fenetre, les options du widget


Listbox)

Exemple :

# L'importation de l’ensemble des éléments du


paquet tkinter :
from tkinter import *
# Création d'une fenêtre avec la classe Tk :
fenetre = Tk()
# Création d'une liste dans la fenêtre :
# la méthode insert() sert à inserer des valeur à la
liste :
liste1 = Listbox (fenetre)
liste1.insert(1, "valeur 1")
liste1.insert(2, "valeur 2")
liste1.insert(3, "valeur 3")
liste1.insert(4, "valeur 4")
liste1.pack()
# Affichage de la fenêtre créée :
fenetre.mainloop()
Résultat d’exécution :
14
La bibliothèque tkinter

Ajouter un « Spinbox » :
Le widget « Spinbox » sert à ajouter un champ de saisie
d’utilisateur, ou bien, à ajouter un bouton sur lequel l’utilisateur
peut choisir une valeur dans une intervalle précise, et sa syntaxe
s’écrit sous la forme :
python
spin1 = Spinbox (fenetre, les options du widget
Spinbox)

Exemple :

# L'importation de l’ensemble des éléments du


paquet tkinter :
from tkinter import *
# Création d'une fenêtre avec la classe Tk :
fenetre = Tk()
# Création d'un Spinbox dans la fenêtre :
liste1 = Spinbox (fenetre)
liste1.pack()
# Affichage de la fenêtre créée :
fenetre.mainloop()
Résultat d’exécution :

15
La bibliothèque tkinter

Ajouter une barre de menu « Menu » :


Le widget « Menubutton » sert à configurer une barre de menu
sur laquelle l’utilisateur peut choisir des options, et sa syntaxe
s’écrit sous la forme :

menu1 = Menu (fenetre, les options du widget


Menubutton)

Exemple :

from tkinter import *


# Création d'une fenêtre avec la classe Tk :
fenetre = Tk()
# Création d'une barre de menu dans la fenêtre :
menu1 = Menu(fenetre)
menu1.add_cascade(label="Fichier")
menu1.add_cascade(label="Options")
menu1.add_cascade(label="Aide")
# Configuration du menu dans la fenêtre
fenetre.config(menu = menu1)
# Affichage de la fenêtre créée :
fenetre.mainloop()
Résultat d’exécution :

16
La bibliothèque tkinter

Misen e forme :

register = Button(fenetre,text = "Enregister", width = "30", height = "2",


command = nomFonction, bg = "grey")

heading = Label(text = "Python Form", bg = "grey", fg = "black", width =


"500", height = "3")

Insertion de données dans un champs

entryNombre2.insert(0,N)

récupérer les données d’un champ

N=int(entryNombre1.get())

17

Vous aimerez peut-être aussi