17.12.2012 Views

Programmation PYTHON - Zenk - Security - Repository

Programmation PYTHON - Zenk - Security - Repository

Programmation PYTHON - Zenk - Security - Repository

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

328<br />

La bibliothèque standard<br />

TROISIÈME PARTIE<br />

Le module Tkinter<br />

Le module Tkinter fournit des outils de construction d’interfaces de type Tcl/Tk, indépendantes<br />

de la plate-forme. Pour la programmation d’interfaces graphiques en Python,<br />

le toolkit Tcl/Tk est aujourd’hui avantageusement remplacé par d’autres systèmes<br />

d’interface comme wxPython, qui permet d’utiliser wxWindows, ou encore PyQt/<br />

PyKDE, qui seront détaillés dans l’annexe sur les bibliothèques tierces. Ces outils tiers<br />

sont aujourd’hui plus largement répandus que Tcl/Tk et offrent une meilleure intégration<br />

au système hôte ainsi qu’un panel de composants beaucoup plus riche.<br />

Il reste bien sûr possible de composer une interface graphique complète avec Tcl,<br />

mais au prix d’un effort supérieur et d’un rendu final au look un peu « vieillot ».<br />

Cependant pour des besoins très limités en interfaces, Tkinter offre l’énorme avantage<br />

d’être entièrement intégré à Python et les système hôtes ont généralement une<br />

installation standard de Tk. Tkinter reste dans ce cas un excellent choix. Cette section<br />

présente une simple introduction à Tkinter, avec le minimum d’informations<br />

nécessaires à la conception d’interfaces basiques.<br />

<strong>Programmation</strong> événementielle<br />

Un programme doté d’une interface graphique base son fonctionnement sur les événements<br />

qui lui sont envoyés par le système via cette interface. Les événements<br />

regroupent, entre autres, toutes les actions souris ou clavier de l’utilisateur sur l’interface.<br />

En d’autres termes, lorsque le programme est lancé, il n’exécute pas une<br />

séquence de code comme un script classique, mais se met en attente d’événements<br />

dans une boucle sans fin.<br />

Chaque événement reçu par le programme est alors envoyé puis traité par un gestionnaire<br />

spécial, qui exécute tout code éventuellement associé à l’événement. Concevoir<br />

une interface graphique consiste donc à associer à des événements l’exécution<br />

de portions de code.<br />

La classe Tk<br />

EN SAVOIR PLUS Python et Tkinter<br />

Le lecteur intéressé pourra approfondir en lisant Python and Tkinter Programming de John Grayson, aux<br />

éditions Hanning.<br />

La classe Tk est un widget spécial qui, lorsqu’elle est instanciée, génère un nouvel<br />

interpréteur Tcl et représente la fenêtre principale de l’application, sur laquelle on<br />

peut greffer d’autres widgets.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!