Méthode place
Un aspect très important lors de la réalisation d'une interface graphique, consiste à disposer intelligemment vos widgets dans la fenêtre. Pour ce faire, plusieurs stratégies de positionnement peuvent être utilisées. La plus simple consiste à placer vos widgets au pixel prêt dans la fenêtre. Mais attention, en cas de changement de taille (on dit aussi de géométrie), vos widgets ne seront pas repositionnés (contrairement aux deux autres stratégies que nous allons étudier ensuite).
Utilisation de la méthode place
Pour positionner un widget au pixel prêt dans son conteneur (dans notre cas, la fenêtre), il faut invoquer la méthode place.
la méthode place est disponible sur n'importe quel widget. Mais en réalité, c'est la classe Place qui porte cette méthode et par le jeu subtil de l'héritage cette méthode est transmise à toutes les classes de widgets.
Voici un exemple simple d'utilisation.
|
1 |
#!/usr/bin/python3 |
Exemple de positionnement de widgets avec la méthode place.
vous l'aurez constaté, les paramètres x et y ne sont pas des paramètres positionnels. Il est donc obligatoire de les nommer dans l'appel à la méthode place. Il en va de même pour certains paramètres des constructeurs de vos widgets.
Et voici le résultat affiché par cet exemple de code Tkinter.

pensez à redimensionner la fenêtre. Vous constaterez que les widgets restent placés à ces coordonnées.
Utilisation de sous-conteneurs
Une fenêtre graphique (une instance de la classe Tk) est un conteneur : elle peut contenir des widgets. Mais il existe un type de widgets particulier : la classe Frame. Un tel widget est aussi un conteneur. Cela sous-entend qu'il est possible d'y injecter des widgets.
L'exemple suivant place deux composants de type Frame à l'intérieur de la fenêtre. Ils auront tous les deux une taille de 150 pixels par 200, soit la moitié de la taille de la fenêtre. Le composant de gauche reçoit à son tour deux widgets de type Label alors que celui de droite reçoit un widget de type Button.
|
1 |
#!/usr/bin/python3 |
Utilisation de conteneurs de type Frame
il est possible de contrôler le détourage d'un Frame, comme le montre l'exemple ci-dessus avec le widget right_container.
Et voici le résultat produit par cet exemple.

Créé avec HelpNDoc Personal Edition: Générateur d'aide complet