Ceci est une ancienne révision du document !
Installation et premiers pas
Installation
Pour installer Tkinter, il suffira de saisir dans un terminal:
sudo apt-get install python-tk
Pour les utilisateurs de python en version 3.x vous devrez taper:
sudo apt-get install python3-tk
Et voila ;) c'est fait.
Premiers pas
Comprendre la structure du code
Pour commencer, il est nécéssaire de comprendre la structure du code. Comme vous savez que tout est objet en python, dans le cas de Tkinter, c'est la même chose. Nous allons prendre comme exemple un widget 'Button'.
#!/usr/bin/env python # -*- coding: Utf-8 -*- # from Tkinter import * class Application(object): def __init__(self): self.fen = Tk() self.bouton = Button(self.fen, text='Je suis un bouton') self.bouton.pack() self.fen.mainloop() if __name__ == '__main__': app = Application()
Nous allons nous intéréser à cette ligne:
self.bouton = Button(self.fen, text='Je suis un bouton')
Dans un premier temps, nous créons une variable:
self.bouton
Ensuite nous assignons un widget à cette variable:
Button
Et pour finir nous indiquons le parent de ce widget et nous lui donnons diffèrentes options:
(self.fen, text='Je suis un bouton')
Vous notterez ici que le parent est
self.fen
et que l'option est:
text='Je suis un bouton'
Chaque widgets, à ces propres options, même si beaucoup sont praticable sur tous. (nottament les options de configurations). Ceci résume à dire que:
Widget(Parent, options, ...)
Une question qui revient souvent: """Comment puis-je connaitre les options dédiés au widget que je veux utilisé?""" C'est trés simple, il vous suffit de lancer python en interactif, d'importer Tkinter et d'instancier une fenêtre puis:
from Tkinter import * fen = Tk() #Notre but ici n'est pas de créer un programme... fen.keys()
Ce qui va nous donner:
['bd', 'borderwidth', 'class', 'menu', 'relief', 'screen', 'use', 'background', 'bg', 'colormap', 'container', 'cursor', 'height', 'highlightbackground', 'highlightcolor', 'highlightthickness', 'padx', 'pady', 'takefocus', 'visual', 'width']
Explication: J'ai demandé de connaitre toutes les clé pour
fen
J'aurais tout aussi bien pu demander ceci:
Button.keys() #ou encore Slider.keys()
Donc pour reprendre l'exemple avec un code unique:
widget.keys()
Notez bien que vous récupérer les clé et non pas les valeurs…Il va faloir prendre un peu d'expérience ou zoner un peu sur internet pour les découvrir. Je vous en donne deux que nous allons utiliser trés trés trés souvent:
#width (largeur) var = Widget(parent, width=int) #int=integer ou entier en françcais #ou bou = Button(fen, width=40 #à noter que la largeur s'exprime caractère dans le cas d'un bouton #height (hauteur) var = Widget(parent, height=int) #ou bou = Button(fen, height=600) #Il est tout à fait possible de cumuler plusieurs options (clé): var = Widget(parent, option1, option2, ...) #ou bou = Button(fen, width=40, height=30)
La structure du code est la même pour tous les widgets. Il vous suffit de comprendre cela, et vous pourrez passer à la suite ;)
Se familiariser avec Tkinter
En construction