teaching:progappchim:tkinter_gui_simple

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
teaching:progappchim:tkinter_gui_simple [2017/05/04 12:02] villersdteaching:progappchim:tkinter_gui_simple [2023/01/19 15:46] (Version actuelle) villersd
Ligne 15: Ligne 15:
  
 <note warning>Entre Python 2 et Python 3, le nom de la librairie "Tkinter" est passé à tkinter ! (première lettre en bas de casse). L'utilisation sous Python 3 des exemples ci-dessous nécessite aussi de transformer les instructions print en print().</note> <note warning>Entre Python 2 et Python 3, le nom de la librairie "Tkinter" est passé à tkinter ! (première lettre en bas de casse). L'utilisation sous Python 3 des exemples ci-dessous nécessite aussi de transformer les instructions print en print().</note>
 +
 +<note warning>Certaines fonctionnalités de tkinter semblent poser parfois des problèmes dans l'environnement Anaconda + Spyder.
 +
 +Vérifier le comportement en utilisant Idle et la version de base de Python !
 +</note>
  
 ===== Une étiquette (Label) affichant "Bonjour !" ===== ===== Une étiquette (Label) affichant "Bonjour !" =====
Ligne 355: Ligne 360:
  
 ===== Insérer une image (photoimage) ===== ===== Insérer une image (photoimage) =====
 +
 +<note tip>Avec Spyder, sous Anaconda, l'affichage peut provoquer une erreur "TclError: image doesn't exist ". Cf. [[https://stackoverflow.com/questions/54243761/tkinter-tclerror-image-pyimage-doesnt-exist]]
 +
 +Solution : choisir dans les préférences de spyder la partie "Console IPython" et l'onglet "Graphiques". Désactiver la "Prise en charge des graphes (Matplotlib)". Redémarrer le noyau. Ne pas oublier de remettre ensuite les réglages d'origine.
 +
 +Autre solution : menu "exécution", sous-menu "profiler" → explications ??
 +</note>
 +
 Télécharger l'image exemple au format png dans le même répertoire que le programme python Télécharger l'image exemple au format png dans le même répertoire que le programme python
 <code python image_import-01.py> <code python image_import-01.py>
Ligne 361: Ligne 374:
 """ """
 insert a PNG image into a python tkinter window insert a PNG image into a python tkinter window
-image png : https://en.wikipedia.org/wiki/File:Lenna.png +image png : https://upload.wikimedia.org/wikipedia/commons/c/c0/Wikipedia-sipi-image-db-mandrill-4.2.03-quantize-only-CCC.png 
-cf. https://en.wikipedia.org/wiki/Lenna+cf. https://commons.wikimedia.org/wiki/File:Wikipedia-sipi-image-db-mandrill-4.2.03-quantize-only-CCC.png
 """ """
  
Ligne 368: Ligne 381:
  
 root = tk.Tk() root = tk.Tk()
-img = tk.PhotoImage(file = "Lenna.png")+img = tk.PhotoImage(file = "mandrill.png")
 label = tk.Label(root, image = img) label = tk.Label(root, image = img)
 #label.pack() #label.pack()
Ligne 374: Ligne 387:
 root.mainloop() root.mainloop()
 </code> </code>
 +
 +  * Image utilisée historiquement fréquemment en traitement d'images : [[https://en.wikipedia.org/wiki/Lenna]]
 +    * [[https://campaignbrief.com/creatable-code-like-a-girl-partner-with-clemenger-sydney-finch-kamber-and-facebook-to-launch-losing-lena-removing-one-image-to-make-millions-of-women-feel-welcome-in-tech/|Campagne de modification de cet usage]] + [[https://www.losinglena.com/]]
 +  * Base d'images pour test : [[http://sipi.usc.edu/database/]] - exemple :
 +    * [[http://sipi.usc.edu/database/database.php?volume=misc&image=10#top]]
 +    * [[https://commons.wikimedia.org/wiki/File:Wikipedia-sipi-image-db-mandrill-4.2.03-quantize-only-CCC.png]]
 +
 +{{  https://upload.wikimedia.org/wikipedia/commons/c/c0/Wikipedia-sipi-image-db-mandrill-4.2.03-quantize-only-CCC.png?256x256  }}
  
 ===== Autres composants logiciels (widgets) de Tkinter ===== ===== Autres composants logiciels (widgets) de Tkinter =====
Ligne 394: Ligne 415:
 ===== Des exemples d'application ===== ===== Des exemples d'application =====
   * [[http://www.python-course.eu/tkinter_mastermind.php|Mastermind]]   * [[http://www.python-course.eu/tkinter_mastermind.php|Mastermind]]
 +
 +===== CustomTkinter =====
 +  * [[https://github.com/TomSchimansky/CustomTkinter|GitHub - TomSchimansky/CustomTkinter: A modern and customizable python UI-library based on Tkinter]]
 +    * [[https://medium.com/@fareedkhandev/modern-gui-using-tkinter-12da0b983e22|Modern GUI using Tkinter. There are two things to remember: | by Fareed Khan | Medium]]
 +    * [[https://dev.to/kavehsabouri/how-to-make-calculator-with-customtkinter-4fi|How to make calculator with CustomTkinter - DEV Community 👩‍💻👨‍💻]]
 +    * [[https://betterprogramming.pub/programming-a-qr-code-generator-app-in-python-91fa248bfe86|Developing a QR Code Generator App in Python]] Teoman Berkay Ayaz, Dec 2022, Better Programming
 +    * [[https://www.reddit.com/r/Python/comments/tb7dqv/customtkinter_modern_and_customizable_ui_across/|CustomTkinter: Modern and customizable Ui across platforms : Python]]
 +
 +===== ttkbootstrap =====
 +  * [[https://ttkbootstrap.readthedocs.io/en/latest/|ttkbootstrap]] a supercharged theme extension for tkinter that enables on-demand modern flat style themes inspired by Bootstrap
 +
  
  • teaching/progappchim/tkinter_gui_simple.1493892142.txt.gz
  • Dernière modification : 2017/05/04 12:02
  • de villersd