User manual

77
Cette ligne dessine l'aiguille des secondes comme une ligne rouge large de
2 pixels et longue de 180 pixels à
partir du point central, avec un angle qui est donné par la valeur des secondes.
s1 = s La seconde qui vient d'être affichée est maintenant dans la variable s1, pour comparer cette valeur et
la seconde actuelle dans le prochain cycle de boucle.
pygame.display.set_caption("Heure actuelle : " +
time.asctime())
Cette ligne écrit l'heure actuelle sous forme numérique dans le titre de la fenêtre. Pour ce faire, la fonction
time.asctime() de la bibliothèque time est utilisée. Elle donne l'heure comme une chaîne de caractères
entièrement formatée.
pygame.display.update() Les éléments graphiques sont dessinés seulement virtuellement jusqu'à présent.
En premier lieu, cette ligne reconstruit vraiment l'affichage graphique. La mise à jour s'effectue en même
temps. Par conséquent, on ne voit aucun vacillement lorsque les aiguilles sont dessinées les unes après
autres.
for event in pygame.event.get():
if event.type == QUIT or (event.type ==
KEYUP and event.key == K_ESCAPE):
mainloop = False
Toujours dans la requête if et également seulement une fois dans la seconde, la requête relativement
gourmande en ressources exécute les événements du système pour déterminer ici si l'utilisateur veut fermer
la fenêtre de l'horloge dans la dernière seconde ou s'il a appuyé sur la touche
[échap]. Si c'est le cas, la
variable
mainloop est spécifiée sur False et la boucle n'est plus répétée.
pygame.quit() Cette dernière ligne arrête d'abord le module PyGame, ce qui ferme également la fenêtre
graphique et par conséquent, l'ensemble du programme.
10 Boîte de dialogue graphique pour contrôler le programme
Aucun programme moderne qui requiert une interaction avec l'utilisateur, ne fonctionne en mode textuel
pur. Il y a partout des interfaces graphiques sur lesquelles l'on peut cliquer sur des boutons au lieu d'avoir à
entrer des données via le clavier.
Python n'offre pas lui-même d'interface graphique pour le programme. Il existe cependant plusieurs modules
externes semblables à PyGame déjà décrit, qui sont spécialement conçus pour créer des interfaces
graphiques. Un des modules les plus connus est
Tkinter
, qui offre à Python l'interface graphique
Tk
, qui peut
également être utilisé pour divers autres langages de programmation.
Les structures de la boîte à outils graphiques Tk diffèrent légèrement de Python et peuvent sembler
inhabituelles de prime abord. Par conséquent, nous commençons par un exemple très simple : Une LED doit
être allumée et éteinte dans une boîte de dialogue.