====== Interface graphique Tkinter ====== [[https://python.doctor/page-tkinter-interface-graphique-python-tutoriel|https://python.doctor/page-tkinter-interface-graphique-python-tutoriel]] [[https://python.developpez.com/cours/TutoSwinnen/?page=Chapitre8|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() {{:python:interface_graphique_tkinter:609b587a51454113e998da2bb815bd1f.png}} ==== 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("", evaluer) chaine = Label(fenetre) entree.pack() chaine.pack() fenetre.mainloop() {{:python:interface_graphique_tkinter:1b5cc3a0407b8aa5171f808ed3d91bf1.png}} ===== 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() {{:python:interface_graphique_tkinter:1851b60ce2895547f37ffc52390106d6.png}} ==== 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() {{:python:interface_graphique_tkinter:0a1138db124dd712b5f9c72c70892c3c.png}} 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() {{:python:interface_graphique_tkinter:c1aefef4966d648292f2f3f3c9d6de78.png}} \\