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)

Checkbutton

from tkinter import *
fenetre = Tk()
bouton = Checkbutton(fenetre, text="Nouveau?")
bouton.pack()
fenetre.mainloop()