Tkinter fastoche

Tout Tkinter en français

Auteur

Raphaël SEBAN

Tout ce que vous avez toujours rêvé à propos de Tkinter sans jamais oser le demander.

- Titre : Tkinter fastoche

- Auteur : Raphaël SEBAN

- Parution : 22 août 2014

- Public visé :

- Licence : Le contenu de cet article est rédigé par Raphaël SEBAN et est mis à disposition selon les termes de la Licence Creative Commons Attribution - Partage dans les Mêmes Conditions 3.0 non transposé. Les logos Developpez.com, en-tête, pied de page, css, et look & feel de l'article sont Copyright ® 2013 Developpez.com.

Sommaire

- I. Généralités

- I-A. Présentation de Tkinter

- I-B. Un exemple d'application simple

- I-C. Constantes Tkinter

- I-D. Constantes ttk

- I-E. Tkinter et les images

- I-E-1. BitmapImage

- I-E-2. PhotoImage

- I-E-3. PIL, ImageTk et PhotoImage

- I-F. Dialogues génériques

- I-F-1. Importer un dialogue

- I-F-2. tkMessageBox - tkinter.messagebox

- I-F-3. tkFileDialog - tkinter.filedialog

- I-F-4. tkSimpleDialog - tkinter.simpledialog

- I-F-5. tkCommonDialog - tkinter.commondialog

- I-F-6. tkColorChooser - tkinter.colorchooser

- II. Gestionnaires d'affichage

- II-A. Gestionnaire Pack - empilement

- II-A-1. Aperçu graphique

- II-A-2. Description

- II-A-3. Options de Pack

- II-A-4. Exemples d'application

- II-B. Gestionnaire Grid - grille d'affichage

- II-B-1. Aperçu graphique

- II-B-2. Description

- II-B-3. Options de Grid

- II-B-4. Exemples d'application

- II-C. Gestionnaire Place - emplacement fixe

- II-C-1. Aperçu graphique

- II-C-2. Description

- II-C-3. Options de Place

- II-C-4. Exemples d'application

- III. Widgets Tkinter

- III-A. Captures d'écran

- III-B. Button - bouton cliquable

- III-B-1. Aperçu graphique

- III-B-2. Domaine d'application

- III-B-3. Options de Button

- III-B-4. Méthodes de Button

- III-B-5. Exemples d'application

- III-C. Canvas - canevas graphique

- III-D. Checkbutton - case à cocher

- III-E. Entry - zone de saisie

- III-F. Frame - conteneur à widgets

- III-G. Label - étiquette de texte

- III-H. LabelFrame - cadre de formulaire

- III-I. Listbox - liste de choix

- III-J. Menu - menus standard et contextuel

- III-K. Menubutton - bouton à menu

- III-L. Message - étiquette multiligne

- III-M. OptionMenu - liste déroulante

- III-N. PanedWindow - subdivision de fenêtre

- III-O. Radiobutton - choix exclusif

- III-P. Scale - réglette à curseur

- III-Q. Scrollbar - ascenseurs

- III-R. Spinbox - boîte à valeurs

- III-S. Text - zone de texte éditable

- III-T. Tk - fenêtre principale

- III-U. Toplevel - fenêtre secondaire

- III-V. Méthodes communes à tous les widgets Tkinter

- IV. Widgets ttk

- IV-A. ttk.Button - bouton cliquable

- IV-B. ttk.Checkbutton - case à cocher

- IV-C. ttk.Combobox - liste déroulante et zone de saisie

- IV-D. ttk.Entry - zone de saisie

- IV-E. ttk.Frame - conteneur à widgets

- IV-F. ttk.Label - étiquette de texte

- IV-G. ttk.LabelFrame - cadre de formulaire

- IV-H. ttk.Menubutton - bouton à menu

- IV-I. ttk.Notebook - conteneur à onglets

- IV-J. ttk.PanedWindow - subdivision de fenêtre

- IV-K. ttk.Progressbar - barre de progression

- IV-L. ttk.Radiobutton - choix exclusif

- IV-M. ttk.Scale - réglette à curseur

- IV-N. ttk.Scrollbar - ascenseurs

- IV-O. ttk.Separator - trait de séparation

- IV-P. ttk.Sizegrip - poignée de redimensionnement

- IV-Q. ttk.Treeview - vue en arborescence

- IV-R. Méthodes communes à tous les widgets ttk

- IV-S. Thèmes et styles graphiques ttk

- V. Variables de contrôle

- VI. Gestion des événements

- VII. Remerciements

I - Généralités

I-A - Présentation de Tkinter

Qu'est-ce que Tkinter ? Qu'est-ce qu'une GUI ? Etc.

I-B - Un exemple d'application simple

Exemple de code source expliqué.

I-C - Constantes Tkinter

Tableau listant toutes les constantes de Tkinter par symbole, valeur, contexte, description.

Exemple :

Symbole

Valeur

Contexte

Description

NW

'nw'

anchor=NW,
sticky=NW,

North-West ; localisation en haut à gauche ;

I-D - Constantes ttk

Tableau listant toutes les constantes de ttk par symbole, valeur, contexte, description.

Exemple :

Symbole

Valeur

Contexte

Description

NW

'nw'

anchor=NW,
sticky=NW,

North-West ; localisation en haut à gauche ;

I-E - Tkinter et les images

Note sur la perte de référence d'une image (problème des variables locales/globales).

I-E-1 - BitmapImage

TODO : à détailler.

I-E-2 - PhotoImage

TODO : à détailler.

I-E-3 - PIL, ImageTk et PhotoImage

Les objets PIL, les fonctionnalités PIL et autres.

I-F - Dialogues génériques

I-F-1 - Importer un dialogue

Différences import entre Python2 et Python3.

I-F-2 - tkMessageBox - tkinter.messagebox

TODO : à détailler.

I-F-3 - tkFileDialog - tkinter.filedialog

TODO : à détailler.

I-F-4 - tkSimpleDialog - tkinter.simpledialog

TODO : à détailler.

I-F-5 - tkCommonDialog - tkinter.commondialog

TODO : à détailler.

I-F-6 - tkColorChooser - tkinter.colorchooser

TODO : à détailler.

II - Gestionnaires d'affichage

Explications et mise en garde sur le mélange des gestionnaires pour un même conteneur.

II-A - Gestionnaire Pack - empilement

II-A-1 - Aperçu graphique

Capture d'écran illustrant la mise en œuvre du gestionnaire d'affichage.

II-A-2 - Description

Description détaillée du gestionnaire d'affichage. Lien vers effbot.org.

II-A-3 - Options de Pack

Lister les options avec exemples d'application pour chaque option.

II-A-4 - Exemples d'application

Code source expliqué, cas particuliers, etc.

II-B - Gestionnaire Grid - grille d'affichage

II-B-1 - Aperçu graphique

Capture d'écran illustrant la mise en œuvre du gestionnaire d'affichage.

II-B-2 - Description

Description détaillée du gestionnaire d'affichage. Lien vers effbot.org.

II-B-3 - Options de Grid

Lister les options avec exemples d'application pour chaque option.

II-B-4 - Exemples d'application

Code source expliqué, cas particuliers, etc.

II-C - Gestionnaire Place - emplacement fixe

II-C-1 - Aperçu graphique

Capture d'écran illustrant la mise en œuvre du gestionnaire d'affichage.

II-C-2 - Description

Description détaillée du gestionnaire d'affichage. Lien vers effbot.org.

II-C-3 - Options de Place

Lister les options avec exemples d'application pour chaque option.

II-C-4 - Exemples d'application

Code source expliqué, cas particuliers, etc.

III - Widgets Tkinter

III-A - Captures d'écran

Aide au choix des widgets grâce à des captures d'écran de widgets mis en scène pour faciliter la compréhension du rôle de chacun.

III-B - Button - bouton cliquable

III-B-1 - Aperçu graphique

Capture d'écran du widget mis en scène pour illustrer son rôle.

III-B-2 - Domaine d'application

Dans quel(s) cadre(s) utilise-t-on ce widget ?

III-B-3 - Options de Button

Lister les options de widget avec exemples d'application pour chaque option.

III-B-4 - Méthodes de Button

Lister les méthodes du widget avec exemples d'application pour chaque méthode.

Ce widget dispose en outre des Méthodes communes à tous les widgets Tkinter.

III-B-5 - Exemples d'application

Code sources expliqués, cas particuliers e.g. plusieurs boutons pour une seule fonction callback, etc.

III-C - Canvas - canevas graphique

Même modèle de plan que widget Button.

III-D - Checkbutton - case à cocher

Idem.

III-E - Entry - zone de saisie

Idem.

III-F - Frame - conteneur à widgets

Idem.

III-G - Label - étiquette de texte

Idem.

III-H - LabelFrame - cadre de formulaire

Idem.

III-I - Listbox - liste de choix

Idem.

III-J - Menu - menus standard et contextuel

Idem.

III-K - Menubutton - bouton à menu

Idem.

III-L - Message - étiquette multiligne

Idem.

III-M - OptionMenu - liste déroulante

Idem.

III-N - PanedWindow - subdivision de fenêtre

Idem.

III-O - Radiobutton - choix exclusif

Idem.

III-P - Scale - réglette à curseur

Idem.

III-Q - Scrollbar - ascenseurs

Idem.

III-R - Spinbox - boîte à valeurs

Idem.

III-S - Text - zone de texte éditable

Idem.

III-T - Tk - fenêtre principale

Idem.

III-U - Toplevel - fenêtre secondaire

Idem.

III-V - Méthodes communes à tous les widgets Tkinter

Lister les méthodes communes avec exemples d'application pour chaque méthode.

IV - Widgets ttk

Basés sur le même modèle de plan que les widgets Tkinter.

IV-A - ttk.Button - bouton cliquable

TODO : à détailler

IV-B - ttk.Checkbutton - case à cocher

TODO : à détailler

IV-C - ttk.Combobox - liste déroulante et zone de saisie

TODO : à détailler

IV-D - ttk.Entry - zone de saisie

TODO : à détailler

IV-E - ttk.Frame - conteneur à widgets

TODO : à détailler

IV-F - ttk.Label - étiquette de texte

TODO : à détailler

IV-G - ttk.LabelFrame - cadre de formulaire

TODO : à détailler

IV-H - ttk.Menubutton - bouton à menu

TODO : à détailler

IV-I - ttk.Notebook - conteneur à onglets

TODO : à détailler

IV-J - ttk.PanedWindow - subdivision de fenêtre

TODO : à détailler

IV-K - ttk.Progressbar - barre de progression

TODO : à détailler

IV-L - ttk.Radiobutton - choix exclusif

TODO : à détailler

IV-M - ttk.Scale - réglette à curseur

TODO : à détailler

IV-N - ttk.Scrollbar - ascenseurs

TODO : à détailler

IV-O - ttk.Separator - trait de séparation

TODO : à détailler

IV-P - ttk.Sizegrip - poignée de redimensionnement

TODO : à détailler

IV-Q - ttk.Treeview - vue en arborescence

TODO : à détailler

IV-R - Méthodes communes à tous les widgets ttk

TODO : à détailler

IV-S - Thèmes et styles graphiques ttk

TODO : à détailler

V - Variables de contrôle

TODO : à détailler

VI - Gestion des événements

TODO : à détailler

VII - Remerciements

Je tiens à remercier chaleureusement toutes les équipes du site Développez.com pour leur relectures attentives, leurs suggestions très pertinentes et leur soutien en général.

Je remercie en particulier XXXX (XXXX) pour la relecture et la correction orthographique,