cours-snt/nsi_python/projet_tkinter/exemple1/main.py
2022-10-25 14:33:52 +02:00

58 lines
2.0 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

from tkinter import *
###############################################################################
# Fonction de navigation entre les fenêtres
###############################################################################
def afficher_fenetre1():
racine.withdraw() # cacher la fenetre racine
fenetre1.deiconify() # afficher la fenetre1
def afficher_racine():
fenetre1.withdraw() # cacher la fenetre racine
racine.deiconify() # afficher la fenetre1
###############################################################################
# Définitions de la fenêtre racine
###############################################################################
# La fenêtre racine. Il ne peut y en avoir quune.
racine = Tk()
# On met un label sur la racine pour identifier la fenêtre.
label1 = Label(racine, text="""Ceci est la fenêtre racine, lapplication se termine lorsquon la ferme.""")
label1.pack()
# On a un bouton qui ouvre une nouvelle fenetre
button1 = Button(racine, text="afficher", command=afficher_fenetre1)
button1.pack()
###############################################################################
# Définitions de la fenêtre 1
###############################################################################
# On peut créer autant de fenêtres toplevel que lon veut
fenetre1 = Toplevel(racine)
label2 = Label(fenetre1, text="""Ceci est une fenêtre en plus, la fermer naffectera pas les autres.""")
label2.pack()
# Un bouton pour quiter le programme. Il appelle la fonction racine.quit()
bouton_quiter = Button(fenetre1, text="quiter", command=racine.quit)
bouton_quiter.pack()
# Un bouton qui revient à la fenetre racine
bouton_racine = Button(fenetre1, text="Retour", command=afficher_racine)
bouton_racine.pack()
# On cache la fenetre1
fenetre1.withdraw()
###############################################################################
# Démarrage du programme
###############################################################################
racine.mainloop()