Il est possible de positionner les widgets comme bon vous semble (en respectant tout de même certaines règles).

La méthode "pack" peut prendre des arguments, et c'est ces arguments qui vont vous permettre de positionner vos différents widgets.

Le widget "Frame", qui va vous être d'une grande utilité pour la création de votre interface, est un widget un peu particulier, car c'est un conteneur à widget.

À faire vous-même 4.1

Testez, étudiez et modifiez cet exemple afin d'en savoir plus sur l'utilisation de "pack" et "Frame" (n'hésitez pas à mener vos propres recherches sur internet).


#!/usr/local/bin/python
# -*- coding:utf-8 -*-
from Tkinter import *

fen = Tk()
f1 = Frame(fen, pady=10,padx=10)
f1.pack(side=TOP,fill=X)
f2 = Frame(fen, pady=10,padx=10)
f2.pack(side=TOP,fill=X)
f3=Frame(fen, pady=10)
f3.pack(side=TOP,fill=X)
f4=Frame(fen, pady=10)
f4.pack(side=TOP)

labelNom=Label(f1, text = "Nom")
labelNom.pack(side=LEFT,padx=14)
champNom=Entry(f1)
champNom.pack(side=LEFT)
labelNom=Label(f2, text = "Prénom")
labelNom.pack(side=LEFT,padx=5)
champPrenom=Entry(f2)
champPrenom.pack(side=LEFT)
boutO=Radiobutton(f3, text="Oui",value="O")
boutO.pack(side=LEFT)
boutN=Radiobutton(f3, text="Non",value="N")
boutN.pack(side=LEFT)
btnOK=Button(f4, text="OK")
btnOK.pack(side=LEFT,padx=10)
btnAn=Button(f4, text="Quitter", command=fen.quit)
btnAn.pack(side=LEFT)
labelTexte=Label(fen, text = "Bonjour Tkinter!")
labelTexte.pack(side=BOTTOM)

fen.mainloop()