tkinter.tix — Widgets d'extension pour Tk

Code source : Lib/tkinter/tix.py

Obsolète depuis la version 3.6: cette extension Tk n'est pas maintenue et ne doit pas être utilisée dans le nouveau code. Utilisez tkinter.ttk à la place.


Le module tkinter.tix (Tk Interface Extension) fournit un riche ensemble supplémentaire de widgets. Bien que la bibliothèque Tk standard contienne de nombreux widgets utiles, ils sont loin d'être complets. La bibliothèque tkinter.tix fournit la plupart des widgets couramment nécessaires qui manquent dans Tk standard : HList, ComboBox, Control (alias SpinBox) et un assortiment de widgets déroulants. tkinter.tix comprend également de nombreux autres widgets qui sont généralement utiles dans un large éventail d'applications : NoteBook, FileEntry, PanedWindow, etc. il y en a plus de 40.

Avec tous ces nouveaux widgets, vous pouvez introduire de nouvelles techniques d'interaction dans les applications, créant ainsi des interfaces utilisateur plus utiles et plus intuitives. Vous pouvez concevoir votre application en choisissant les widgets les plus appropriés pour répondre aux besoins particuliers de votre application et des utilisateurs.

Voir aussi

Page d'accueil de Tix

La page d'accueil de Tix (en anglais). Cela inclut des liens vers de la documentation supplémentaire et des téléchargements.

Tix Man Pages

Version en ligne des pages de manuel et du manuel de référence (en anglais).

Guide de programmation Tix

Version en ligne du manuel de référence du programmeur (en anglais).

Applications pour le développement Tix

Applications Tix pour le développement de programmes Tix et Tkinter. Les applications Tide fonctionnent sous Tk ou Tkinter, et incluent TixInspect, un inspecteur pour modifier et déboguer à distance les applications Tix/Tk/Tkinter.

Utilisation de Tix

class tkinter.tix.Tk(screenName=None, baseName=None, className='Tix')

Widget de niveau supérieur de Tix qui représente principalement la fenêtre principale d'une application. Il a un interpréteur Tcl associé.

Les classes du module tkinter.tix sous-classent les classes du module tkinter. Le premier importe le second, donc pour utiliser tkinter.tix avec Tkinter, il vous suffit d'importer un module. En général, vous pouvez simplement importer tkinter.tix et remplacer l'appel de niveau supérieur à tkinter.Tk par tix.Tk :

from tkinter import tix
from tkinter.constants import *
root = tix.Tk()

Pour utiliser tkinter.tix, vous devez avoir installé les widgets Tix, généralement en même temps que votre installation des widgets Tk. Pour tester votre installation, essayez ce qui suit : :

from tkinter import tix
root = tix.Tk()
root.tk.eval('package require Tix')

Widgets Tix

Tix introduit plus de 40 classes de widgets dans le répertoire tkinter.

Widgets de base

class tkinter.tix.Balloon

Une bulle qui apparaît sur un widget pour fournir de l'aide. Lorsque l'utilisateur déplace le curseur à l'intérieur d'un widget auquel un widget Ballon a été lié, une petite fenêtre contextuelle avec un message descriptif s'affiche à l'écran.

class tkinter.tix.ButtonBox

Le widget ButtonBox crée une boîte de boutons, telle qu'elle est couramment utilisée pour Ok Cancel.

class tkinter.tix.ComboBox

Le widget ComboBox est similaire au contrôle de zone de liste déroulante dans Windows. L'utilisateur peut sélectionner un choix en tapant dans le sous-widget d'entrée ou en sélectionnant dans le sous-widget de la liste déroulante.

class tkinter.tix.Control

Le widget Control est également connu sous le nom de widget SpinBox. L'utilisateur peut ajuster la valeur en appuyant sur les deux boutons fléchés ou en saisissant la valeur directement dans l'entrée. La nouvelle valeur sera comparée aux limites supérieures et inférieures définies par l'utilisateur.

class tkinter.tix.LabelEntry

Le widget LabelEntry regroupe un widget d'entrée et une étiquette dans un méga widget. Il peut être utilisé pour simplifier la création d'interfaces de type "formulaire de saisie".

class tkinter.tix.LabelFrame

Le widget LabelFrame regroupe un widget cadre et une étiquette dans un méga widget. Pour créer des widgets à l'intérieur d'un widget LabelFrame, on crée les nouveaux widgets relatifs au sous-widget frame et on les gère à l'intérieur du sous-widget frame.

class tkinter.tix.Meter

Le widget Meter peut être utilisé pour afficher la progression d'une tâche en arrière-plan qui peut prendre beaucoup de temps à s'exécuter .

class tkinter.tix.OptionMenu

Le widget OptionMenu crée un bouton de menu d'options.

class tkinter.tix.PopupMenu

Le widget PopupMenu peut être utilisé en remplacement de la commande tk_popup. L'avantage du widget Tix PopupMenu est qu'il nécessite moins de manipulation de code dans l'application.

class tkinter.tix.Select

Le widget Select est un conteneur de sous-widgets de bouton. Il peut être utilisé pour afficher des boutons radio ou des cases à cocher.

class tkinter.tix.StdButtonBox

Le widget StdButtonBox est un groupe de boutons standard pour afficher des boîtes de dialogue similaires à celle de la bibliothèque graphique Motif.

Sélecteurs de fichiers

class tkinter.tix.DirList

Le widget DirList affiche une liste d'un répertoire, de ses répertoires précédents et de ses sous-répertoires. L'utilisateur peut choisir l'un des répertoires affichés dans la liste ou passer à un autre répertoire.

class tkinter.tix.DirTree

Le widget DirTree affiche une arborescence d'un répertoire, de ses répertoires précédents et de ses sous-répertoires. L'utilisateur peut choisir l'un des répertoires affichés dans la liste ou passer à un autre répertoire.

class tkinter.tix.DirSelectDialog

Le widget DirSelectDialog présente les répertoires du système de fichiers dans une fenêtre de dialogue. L'utilisateur peut utiliser cette fenêtre de dialogue pour naviguer dans le système de fichiers afin de sélectionner le répertoire souhaité.

class tkinter.tix.DirSelectBox

Le widget DirSelectBox est similaire à la boîte de sélection de répertoire Motif(TM) standard. Il est généralement utilisé pour que l'utilisateur choisisse un répertoire. DirSelectBox stocke les répertoires les plus récemment sélectionnés dans un widget ComboBox afin qu'ils puissent être rapidement sélectionnés à nouveau.

class tkinter.tix.ExFileSelectBox

Le widget ExFileSelectBox est généralement intégré dans un widget tixExFileSelectDialog. Il fournit à l'utilisateur une méthode pratique pour sélectionner des fichiers. Le style du widget ExFileSelectBox est très similaire à la boîte de dialogue de fichier standard sur MS Windows 3.1.

class tkinter.tix.FileSelectBox

Le widget FileSelectBox est similaire à la boîte de sélection de fichiers Motif(TM) standard. Il est généralement utilisé pour que l'utilisateur choisisse un fichier. FileSelectBox stocke les fichiers les plus récemment sélectionnés dans un widget ComboBox afin qu'ils puissent être rapidement sélectionnés à nouveau.

class tkinter.tix.FileEntry

Le widget FileEntry peut être utilisé pour saisir un nom de fichier. L'utilisateur peut saisir manuellement le nom du fichier. Alternativement, l'utilisateur peut appuyer sur le widget de bouton qui se trouve à côté de l'entrée, ce qui fera apparaître une boîte de dialogue de sélection de fichier.

ListBox hiérarchique

class tkinter.tix.HList

Le widget HList peut être utilisé pour afficher toutes les données qui ont une structure hiérarchique, par exemple, l'arborescence du système de fichiers. Les entrées de la liste sont mises en retrait et reliées par des lignes secondaires en fonction de leur place dans la hiérarchie.

class tkinter.tix.CheckList

Le widget CheckList affiche une liste d'éléments à sélectionner par l'utilisateur. CheckList agit de la même manière que les widgets checkbutton ou radiobutton de Tk, sauf qu'il est capable de gérer beaucoup plus d'éléments que les checkbuttons ou les radiobuttons.

class tkinter.tix.Tree

Le widget Tree peut être utilisé pour afficher des données hiérarchiques sous forme d'arborescence. L'utilisateur peut ajuster la vue de l'arborescence en ouvrant ou en fermant des parties de l'arborescence.

ListBox tabulaire

class tkinter.tix.TList

Le widget TList peut être utilisé pour afficher des données sous forme de tableau. Les entrées de liste d'un widget TList sont similaires aux entrées du widget listbox Tk. Les principales différences sont (1) le widget TList peut afficher les entrées de la liste dans un format bidimensionnel et (2) vous pouvez utiliser des images graphiques ainsi que plusieurs couleurs et polices pour les entrées de la liste.

Gestionnaire de widgets

class tkinter.tix.PanedWindow

Le widget PanedWindow permet à l'utilisateur de manipuler de manière interactive la taille de plusieurs volets. Les volets peuvent être disposés verticalement ou horizontalement. L'utilisateur modifie la taille des volets en faisant glisser la poignée de redimensionnement entre deux volets.

class tkinter.tix.ListNoteBook

Le widget ListNoteBook est très similaire au widget TixNoteBook : il peut être utilisé pour afficher de nombreuses fenêtres dans un espace limité en utilisant une métaphore de bloc-notes. Le bloc-notes est divisé en une pile de pages (fenêtres). Une seule de ces pages peut être affichée à la fois. L'utilisateur peut naviguer dans ces pages en choisissant le nom de la page souhaitée dans le sous-widget hlist.

class tkinter.tix.NoteBook

Le widget NoteBook peut être utilisé pour afficher de nombreuses fenêtres dans un espace limité en utilisant une métaphore de bloc-notes. Le bloc-notes est divisé en une pile de pages. Une seule de ces pages peut être affichée à la fois. L'utilisateur peut naviguer dans ces pages en choisissant les « onglets » visuels en haut du widget NoteBook.

Types d'images

Le module tkinter.tix ajoute :

  • les capacités pixmap pour tous les widgets tkinter.tix et tkinter afin de créer des images couleurs à partir de fichiers XPM ;

  • les types d'images Compound peuvent être utilisés pour créer des images composées de plusieurs lignes horizontales ; chaque ligne est composée d'une suite d'éléments (textes, bitmaps, images ou espaces) disposés de gauche à droite. Par exemple, une image composée peut être utilisée pour afficher simultanément un bitmap et une chaîne de texte dans un widget Tk Button.

Widgets divers

class tkinter.tix.InputOnly

Les widgets InputOnly acceptent les entrées de l'utilisateur, ce qui peut être fait avec la commande bind (Unix uniquement).

Gestionnaire de forme de formulaire

De plus, tkinter.tix étend tkinter en fournissant :

class tkinter.tix.Form

Le gestionnaire de géométrie Form basé sur les règles de connexions pour tous les widgets Tk.

Commandes Tix

class tkinter.tix.tixCommand

Les commandes tix permettent d'accéder à divers éléments de l'état interne de Tix et du contexte d'application Tix. La plupart des informations manipulées par ces méthodes concernent l'application dans son ensemble, ou un écran ou un affichage, plutôt qu'une fenêtre particulière.

Pour afficher les paramètres actuels, l'utilisation courante est :

from tkinter import tix
root = tix.Tk()
print(root.tix_configure())
tixCommand.tix_configure(cnf=None, **kw)

Interroge ou modifie les options de configuration du contexte applicatif Tix. Si aucune option n'est spécifiée, renvoie un dictionnaire de toutes les options disponibles. Si l'option est spécifiée sans valeur, alors la méthode renvoie une liste décrivant l'option nommée (cette liste sera identique à la sous-liste correspondante de la valeur renvoyée si aucune option n'est spécifiée). Si une ou plusieurs paires option-valeur sont spécifiées, alors la méthode modifie la ou les options données pour avoir la ou les valeurs données ; dans ce cas, la méthode renvoie une chaîne vide. L'option peut être n'importe laquelle des options de configuration.

tixCommand.tix_cget(option)

Renvoie la valeur actuelle de l'option de configuration donnée par option. L'option peut être n'importe laquelle des options de configuration.

tixCommand.tix_getbitmap(name)

Cherche un fichier bitmap du nom name.xpm ou name dans l'un des répertoires bitmap (voir la méthode tix_addbitmapdir()). En utilisant tix_getbitmap(), vous pouvez éviter de coder en dur les noms de chemin des fichiers bitmap dans votre application. En cas de succès, il renvoie le chemin d'accès complet du fichier bitmap, préfixé par le caractère @. La valeur renvoyée peut être utilisée pour configurer l'option bitmap des widgets Tk et Tix.

tixCommand.tix_addbitmapdir(directory)

Tix maintient une liste de répertoires dans lesquels les méthodes tix_getimage() et tix_getbitmap() recherchent les fichiers images. Le répertoire bitmap standard est $TIX_LIBRARY/bitmaps. La méthode tix_addbitmapdir() ajoute directory dans cette liste. En utilisant cette méthode, les fichiers images d'une application peuvent également être localisés en utilisant la méthode tix_getimage() ou tix_getbitmap().

tixCommand.tix_filedialog([dlgclass])

Renvoie la boîte de dialogue de sélection de fichier qui peut être partagée entre différents appels de cette application. Cette méthode crée un widget de dialogue de sélection de fichier lors de son premier appel. Cette boîte de dialogue est renvoyée par tous les appels ultérieurs à tix_filedialog(). Un paramètre facultatif dlgclass peut être passé sous forme de chaîne pour spécifier le type de widget de dialogue de sélection de fichier souhaité. Les options possibles sont tix, FileSelectDialog ou tixExFileSelectDialog.

tixCommand.tix_getimage(self, name)

Localise un fichier image du nom name.xpm, name.xbm ou name.ppm dans l'un des répertoires bitmap (voir la méthode tix_addbitmapdir() ci-dessus). S'il existe plusieurs fichiers portant le même nom (mais avec des extensions différentes), le type d'image est choisi en fonction de la profondeur de l'affichage X : les images xbm sont choisies sur les écrans monochromes et les images couleurs sont choisies sur les écrans couleurs. En utilisant tix_getimage(), vous pouvez éviter de coder en dur les noms de chemin des fichiers image dans votre application. En cas de succès, cette méthode renvoie le nom de l'image nouvellement créée, qui peut être utilisée pour configurer l'option image des widgets Tk et Tix.

tixCommand.tix_option_get(name)

Obtient les options maintenues par le mécanisme de schéma Tix.

tixCommand.tix_resetoptions(newScheme, newFontSet[, newScmPrio])

Réinitialise le schéma et le jeu de polices de l'application Tix sur newScheme et newFontSet, respectivement. Cela n'affecte que les widgets créés après cet appel. Par conséquent, il est préférable d'appeler la méthode resetoptions avant la création de tout widget dans une application Tix.

Le paramètre facultatif newScmPrio peut être donné pour réinitialiser le niveau de priorité des options Tk définies par les schémas Tix.

En raison de la façon dont Tk gère la base de données d'options X, après l'importation et l'initialisation de Tix, il n'est pas possible de réinitialiser les schémas de couleurs et les jeux de polices à l'aide de la méthode tix_config(). À la place, la méthode tix_resetoptions() doit être utilisée.