Les fenêtres

Les fenêtres

INTERFACE  :

Le domaine des interfaces graphiques ou GUI (Graphical User Interfaces) est extrêmement complexe. Chaque système d’exploitation peut proposer plusieurs bibliothèques de fonctions graphiques de base.

Avec Python, la bibliothèque la plus utilisée est la bibliothèque tkinter.

from tkinter import*

DIMENSIONS :

Les différentes dimensions comme la largeur (width), la hauteur (height), etc. peuvent être précisées dans différentes unités.

Si vous indiquez une dimension par un entier, elle est supposée être en pixels.

Vous pouvez préciser une unité en utilisant une chaîne de caractères qui contient un nombre suivi d’une unité :

c : Centimètres i : Pousses (Inches) m : Millimètres. p : Points d’impression

Le système de coordonnées

Comme dans la plupart des systèmes d’affichage, l’origine de chaque système de coordonnées est située à son coin supérieur gauche, les valeurs de x augmentant vers la droite et les valeurs de y augmentant vers le bas.

L’unité de base est le pixel avec le coin supérieur gauche de coordonnées (0,0). Les coordonnées indiquées par un entier sont toujours exprimées en pixels, mais chaque coordonnée peut être indiquée via une chaîne de caractères dans une unité particulière.

Les coordonnées sont toujours positives.

_images/coordonnees.PNG

COULEURS  :

Les couleurs :

On peut définir les couleurs de plusieurs façons :

  • Une chaîne de caractère :

#rgb, ( #fff couleur blanc) , #rrggbb (ex : #000000 couleur noir) ,#rrrgggbbb

  • Un nom standard : (ex : « blue » couleur bleue)

Liste des couleurs :

_images/image71.png
_images/image72.png

Utilisation du module tkinter :

Charger le module  :

Pour utiliser le module tkinter, il faut d’abord choisir un mode d’importation :

from tkinter import  # charge le module tkinter.

Par souci de clarté, le module tkinter sera toujours explicite dans cette page;

Les variables seront en français et en minuscules.

En python3, le module est rebaptisé tkinter. Il faudra alors choisir un de ces chargements de module:

import tkinter
import tkinter as tkinter #pour la compatibilité avec cette page
import tkinter as tk # pour un préfixage tk
from tkinter import  # pour éviter tout préfixage

Ouvrir une fenêtre  :

Ouvrir la fenêtre:
_images/image73.png _images/image74.png

Remarques :

Commande Effet
fenetre=Tk()
Permet de désigner un premier objet (une fenêtre) duquel les autres dépendront. Le nom (arbitrairement choisi) est déterminé par fenetre.(ligne 11)
fenetre.title ("Terminale ISN ")
Affiche le titre (chaîne de caractères) dans la fenêtre. (ligne 6)
fenetre.iconbitmap("logo-isn.ico")
Affiche un logo stocké dans un fichier image avec l’extension « .ico » (dans le même dossier que le fichier python qui utilise l’icône). (ligne 7)
fenetre.geometry("500x150")
Précise une taille fixe de fenêtre. Dans le cas contraire, les dimensions de la fenêtre s’adaptent à son contenu. (ligne 5)
fenetre.mainloop()
Lancera le gestionnaire d’événements. L’essentiel du script (sauf fonctions ou classes) doit se situer entre es deux, cela peut être considéré comme une boucle. (ligne 17)
Méthodes fenêtres
Méthode Effet
fenetre.geometry(“500x150”)
Redimensionne la fenêtre en 500 pixels de large et 150 pixels de haut.
fenetre.title( “ titre ”)
Affiche le titre dans la fenêtre
fenetre.winfo_width()
Renvoie la largeur de la fenêtre.
fenetre.winfo_height()
Renvoie la hauteur de la fenêtre.
fenetre.configure(bg=”red”)
Le fond de la fenêtre devient rouge. (ligne 8)
fenetre.winfo_screenwidth()
Largeur de l’écran en pixels.
fenetre.winfo_screenheight()
Hauteur de l’écran en pixels.
  fenetre.resizable(width=False,height=False) #  Empêche le redimensionnement de la fenêtre.



Obtenir la taille et la position de la fenêtre.

fenetre géometrie

On utilise la méthode de fenêtre `` fenetre.geometry()”. Exécutée sans paramètre, elle renvoie la taille et la position de la fenêtre sous forme d’une chaîne composée de la façon suivante: « LxH+X+Y   » Avec:

L = largeur de la fenêtre
x = séparateur
H = hauteur de la fenêtre
+ = séparateur (en fait + ou -)
X = position du côté gauche de la fenêtre par rapport au côté gauche de l'écran.
+ = séparateur (en fait + ou   -).
Y = position du côté haut de la fenêtre par rapport au côté haut de l'écran.

Exemple 0702 : Dimension d’une fenêtre  :

“500×150+60+60” ⇒ L=500, H=150, X=60, Y=60
_images/image75.png _images/image76.png
_images/blanc.png

Exemple 0703 : Placement de la fenêtre  :

_images/place.PNG _images/blanc.png
  • tilisation du module tkinter