Radiobutton Tkinter | Python 3
Le Radiobutton est un widget Tkinter standard utilisé pour implémenter un bouton à choix multiples, qui est un moyen d’offrir de nombreuses sélections possibles à l’utilisateur et permet à l’utilisateur de n’en choisir qu’une seule.
Les boutons radio peuvent contenir du texte ou des images, et vous pouvez associer une fonction ou une méthode Python à chaque bouton. Lorsque le bouton est cliqué, Tkinter appelle automatiquement cette fonction ou méthode.
Pour mettre en œuvre cette fonctionnalité, chaque groupe de boutons radio doit être associé à la même variable et chacun des boutons doit symboliser une seule valeur. Vous pouvez utiliser la touche Tab pour passer d’un bouton radion à un autre.

Syntaxe:
Voici la syntaxe pour créer ce widget:
btn = Radiobutton ( master, option = value, ... )
Paramètres:
- master : Cela représente la fenêtre parent.
- options : Voir ci-dessous la liste des options les plus couramment utilisées pour ce widget. Ces options peuvent être utilisées sous forme de paires clé-valeur séparées par des virgules.
Exemple:
from tkinter import * def sel(): selected = "Vous avez sélectionné : " + v.get() label.config(text = selected) gui = Tk() v = StringVar() v.set("Python") # initialiser r1 = Radiobutton(gui, text="Python", variable=v, value="Python", command=sel) r1.pack(anchor = W) r2 = Radiobutton(gui, text="Java", variable=v, value="Java", command=sel) r2.pack(anchor = W) r3 = Radiobutton(gui, text="PHP", variable=v, value="PHP", command=sel) r3.pack(anchor = W) label = Label(gui) label.pack() gui.mainloop()
Sortie:

Tableau des options pour le widget Radiobutton
activebackground | Couleur d’arrière-plan lorsque le radiobutton est sous le curseur. |
activeforeground | Couleur du premier plan lorsque le radiobutton est sous le curseur. |
anchor | Si le widget a un espace plus grand qu’il n’en a besoin, cette option spécifie où le radiobutton va se met dans cet espace. La valeur par défaut est anchor = CENTER. |
bitmap | Pour afficher une image monochrome sur un bouton radio, définissez cette option sur un bitmap. |
bg | Couleur de fond normale. |
command | Fonction ou méthode à appeler lorsqu’on clique sur le radiobutton. |
fg | Couleur normale du premier plan (texte). |
font | Police de texte à utiliser pour l’étiquette du radiobutton. |
height | Le nombre de lignes de texte (pas de pixels) sur le bouton radio. La valeur par défaut est 1. |
highlightcolor | La couleur du focus lorsque le widget a le focus. |
image | Image à afficher sur le radiobutton (au lieu du texte). |
justify |
|
value | Lorsqu’un bouton radio est activé par l’utilisateur, sa variable de contrôle est définie sur sa valeur actuelle. Si la variable de contrôle est un StringVar, donnez à chaque bouton radio du groupe une valeur de type String. Si la variable de contrôle est un IntVar, donnez à chaque radiobutton une valeur entière. |
textvariable | Pour asservir le texte affiché dans un widget Label à une variable de contrôle de la classe StringVar, définissez cette option sur cette variable. |
selectimage | Si vous utilisez l’option image pour afficher un graphique au lieu de texte lorsque le bouton radio est désactivé, vous pouvez définir l’option selectimage sur une image différente qui sera affichée lorsque le bouton radio est défini. |
selectcolor | La couleur du bouton radio lorsqu’il est défini. La valeur par défaut est rouge. |
padx | Ajouter le padding à gauche et à droite du texte. |
pady | Ajouter le padding au-dessus et en dessous du texte. |
relief | Relief indique le type de bordure. Certaines des valeurs sont SUNKEN, RAISED, GROOVE et RIDGE. |
state | Définissez cette option sur DISABLED pour griser le radiobutton et le désactiver. La valeur ACTIVE lorsque la souris est dessus. La valeur par défaut est NORMAL. |
underline | La valeur par défaut est -1, ce qui signifie qu’aucun caractère du texte sur le radiobutton ne sera souligné. S’il n’est pas négatif, le caractère de texte correspondant sera souligné. |
width | Largeur du radiobutton selon les lettres (si vous affichez du texte) ou en pixels (si vous affichez une image). |
wraplength | Si cette valeur est définie sur un nombre positif, les lignes de texte seront encapsulées pour tenir dans cette longueur. |