Ceci est une ancienne révision du document !
Interface graphique Tkinter
https://python.doctor/page-tkinter-interface-graphique-python-tutoriel
https://python.developpez.com/cours/TutoSwinnen/?page=Chapitre8
Exemples
Hello world
from tkinter import * fenetre = Tk() texte1 = Label(fenetre, text='Hello world', fg='red') texte1.pack() bouton1 = Button(fenetre, text='Quitter', command = fenetre.destroy) bouton1.pack() fenetre.mainloop()
Calculatrice
from tkinter import * from math import * # définition de l'action à effectuer si l'utilisateur actionne # la touche "enter" alors qu'il édite le champ d'entrée : x = 10 def evaluer(event): chaine.configure(text = "Résultat = " + str(eval(entree.get()))) # ----- Programme principal : ----- fenetre = Tk() entree = Entry(fenetre) entree.bind("<Return>", evaluer) chaine = Label(fenetre) entree.pack() chaine.pack() fenetre.mainloop()
Les classes de tkinter
Widget |
Button |
Canvas |
Checkbutton |
Entry |
Frame |
Label |
Listbox |
Menu |
Menubutton |
Message |
Radiobutton |
Scale |
Scrollbar |
Text |
Toplevel |
Button
from tkinter import * fenetre = Tk() bouton1 = Button(fenetre, text='Quitter', command = fenetre.destroy) bouton1.pack() fenetre.mainloop()
Canvas
from tkinter import * fenetre = Tk() canvas = Canvas(fenetre, width=150, height=120, background='yellow') ligne1 = canvas.create_line(75, 0, 75, 120) ligne2 = canvas.create_line(0, 60, 150, 60) txt = canvas.create_text(75, 60, text="Cible", font="Arial 16 italic", fill="blue") canvas.pack() fenetre.mainloop()
Autres éléments :
create_arc() : arc de cercle create_bitmap() : bitmap create_image() : image create_line() : ligne create_oval() : ovale create_polygon() : polygone create_rectangle() : rectangle create_text() : texte create_window() : fenetre
Pour changer les coordonnées d'un élément :
canvas.coords(élément, x0, y0, x1, y1)
Pour supprimer un élément :
canvas.delete(élément)