Participer au site avec un Tip
Rechercher
 

Améliorations / Corrections

Vous avez des améliorations (ou des corrections) à proposer pour ce document : je vous remerçie par avance de m'en faire part, cela m'aide à améliorer le site.

Emplacement :

Description des améliorations :

Introduction à Tkinter

Votre première fenêtre Tkinter


Accès rapide :
Tcl et Tk
Points faibles de Tk et Tkinter
Points forts de Tk et Tkinter

Tkinter est binding pour l'API d'interface graphique Tk, Tkinter signfiant Tk Inter(face). Cette API est assez simple à utiliser. Avant de rentrer plus en détails dans l'utilisation de Tkinter, commençons par présenter Tk.

Tcl et Tk

Tcl (Tool Command Language) est un langage de script créé par John Ousterhout en 1988. Ce langage, multiplateforme, est très simple d'emploi et peut être utile dans certaines situations. Pour autant le langage Python est bien plus puissant et polyvalent.

En 1990, John Ousterhout ajoute à Tcl une librairie d'interface graphique, elle aussi multiplateforme : vous l'aurez compris, il s'agit de Tk. Le tandem Tcl-Tk (ou Tcl/Tk) est d'ailleurs assez connus. L'implémentation technique de Tk est néanmoins relativement bien disjointe de celle de Tcl. Cela à permis de pouvoir réutiliser Tk dans d'autres langages de programmation comme, par exemple, le langage C.

Et c'est notamment le cas en Python : il propose un binding (ou couche d'interface en Python et Tk) pour cette librairie. Ce binding est appelé Tkinter pour « Tk interface ».

si vous souhaitez obtenir plus d'informations sur le langage Tcl et Tk, vous pouvez consulter le site officiel : http://www.tcl.tk.

Points faibles de Tk et Tkinter

Le principal point faible de Tk réside dans la pauvreté des composants graphiques proposés. Par exemple, il n'est pas possible, avec Tkinter, de mettre des icônes dans les différents menus d'une barre de menu. De même, il n'est pas possible de changer le thème graphique utilisé par Tk.

à titre de comparaison, la librairie Qt, proposée pour le langage de programmation C++, est bien plus riche et elle est aussi multiplateformes. A ma connaissance, c'est la librairie de mise en oeuvre d'interfaces graphiques la plus riche, tous langages de programmation confondus. L'utilisation du binding PySide pour Qt permettra donc d'avoir des interfaces graphiques bien plus soignées.

Points forts de Tk et Tkinter

Par contre, le gros point fort de Tk et de Tkinter, pour nous développeurs Python, réside dans le fait que ces deux éléments logiciels sont directement inclus dans l'environnement d'exécution Python. Du coup, vous n'avez aucune installation à effectuer et vous êtes certains que votre interface graphique Tkinter pourra correctement s'exécuter, quelle que soit la plateforme utilisée (Windows, Linux/Unix ou encore Mac).

à titre de comparaison, l'utilisation du binding PySide pour Qt imposera d'installer ces deux éléments logiciels sur les machines devant exécuter votre programme (sauf à générer un installeur).


Votre première fenêtre Tkinter