Un immense merci à toutes les personnes qui ont fait un don pour aider ce projet ? |
---|
CustomTkinter est une bibliothèque d'interface utilisateur Python basée sur Tkinter, qui fournit de nouveaux widgets modernes et entièrement personnalisables. Ils sont créés et utilisés comme des widgets Tkinter normaux et peuvent également être utilisés en combinaison avec des éléments Tkinter normaux. Les widgets et les couleurs des fenêtres s'adaptent soit à l'apparence du système, soit au mode défini manuellement (« clair », « sombre »), et tous les widgets et fenêtres CustomTkinter prennent en charge la mise à l'échelle HighDPI (Windows, macOS). Avec CustomTkinter, vous obtiendrez une apparence cohérente et moderne sur toutes les plateformes de bureau (Windows, macOS, Linux).
| complex_example.py
sur Windows 11 avec mode sombre et thème « bleu »
| complex_example.py
sur macOS en mode clair et thème « bleu » standard
Installez le module avec pip :
pip3 install customtkinter
Mettre à jour l'installation existante : pip3 install customtkinter --upgrade
(mettre à jour aussi souvent que possible car cette bibliothèque est en développement actif)
La documentation officielle peut être trouvée ici :
➡️ https://customtkinter.tomschimansky.com/documentation .
Pour tester customtkinter, vous pouvez essayer cet exemple simple avec un seul bouton :
import customtkintercustomtkinter.set_lessly_mode("System") # Modes : système (par défaut), clair, darkcustomtkinter.set_default_color_theme("blue") # Thèmes : bleu (par défaut), bleu foncé, greenapp = customtkinter.CTk() # créer une fenêtre CTk comme vous le faites avec Tk windowapp.geometry("400x240")def button_function():print("button pressé")# Utilisez CTkButton au lieu de tkinter Buttonbutton = customtkinter.CTkButton(master=app, text="CTkButton", command=button_function)button.place(relx=0.5,reli=0.5,anchor=customtkinter.CENTER)app.mainloop ()
ce qui donne la fenêtre suivante sur macOS :
Dans le dossier des exemples, vous trouverez d'autres exemples de programmes et dans la documentation, vous trouverez de plus amples informations sur le mode d'apparence, la mise à l'échelle, les thèmes et tous les widgets.
CustomTkinter peut s'adapter au mode clair ou sombre de Windows 10/11 :
| complex_example.py
sur Windows 11 avec changement de mode d'apparence du système et thème « bleu » standard
Sur macOS, vous avez besoin soit de python3.10 ou supérieur, soit de la version anaconda python pour obtenir un en-tête de fenêtre sombre (Tcl/Tk >= 8.6.9 requis) :
| complex_example.py
sur macOS avec changement de mode d'apparence du système, changement de mise à l'échelle de l'utilisateur et thème « bleu » standard
Il est possible de mettre une image sur un CTkButton. Il suffit de passer un objet PhotoImage au CTkButton avec l'argument image
. Si vous ne voulez pas de texte du tout, vous devez définir text=""
ou spécifier comment positionner le texte et l'image en même temps avec l'option compound
:
| image_example.py
sur Windows 11
Les cadres défilants sont possibles en orientation verticale ou horizontale et peuvent être combinés avec n'importe quel autre widget. | scrollable_frame_example.py
sur Windows 11
Dans l'exemple suivant, j'ai utilisé un TkinterMapView qui s'intègre bien à un programme CustomTkinter. Il s'agit d'un widget de carte basé sur des tuiles qui affiche OpenStreetMap ou d'autres cartes basées sur des tuiles :
| examples/map_with_customtkinter.py
du référentiel TkinterMapView sur Windows 11
Vous pouvez trouver la bibliothèque TkinterMapView et un exemple de programme ici : https://github.com/TomSchimansky/TkinterMapView