Comment mettre à jour le texte du bouton Tkinter
-
Utilisez
StringVar
pour modifier le texte du bouton Tkinter -
Propriété
text
de Tkinter Button pour modifier le texte du bouton
Dans ce tutoriel, nous allons introduire la façon de modifier le texte du bouton Tkinter. Il est similaire à la méthode changer le texte du label Tkinter,
- Méthode
StringVar
- Bouton
text
Méthode de propriété
Utilisez StringVar
pour modifier le texte du bouton Tkinter
StringVar
est un type de constructeur Tkinter pour créer la variable de chaîne Tkinter.
Après avoir associé la variable StringVar
au widget Button
de Tkinter, Tkinter mettra à jour le texte de ce Button
lorsque la variable sera modifiée.
import tkinter as tk
class Test:
def __init__(self):
self.root = tk.Tk()
self.root.geometry("250x100")
self.text = tk.StringVar()
self.text.set("Original Text")
self.buttonA = tk.Button(self.root, textvariable=self.text)
self.buttonB = tk.Button(
self.root, text="Click to change text", command=self.changeText
)
self.buttonA.pack(side=tk.LEFT)
self.buttonB.pack(side=tk.RIGHT)
self.root.mainloop()
def changeText(self):
self.text.set("Updated Text")
app = Test()
self.text = tk.StringVar()
self.text.set("Original Text")
Le constructeur de Tkinter ne pouvait pas initier la variable chaîne avec la chaîne comme self.text = tk.StringVar("Text")
.
Nous devrions appeler la méthode set
pour définir la valeur de StringVar
, comme self.text.set("Original Text")
.
self.buttonA = tk.Button(self.root, textvariable=self.text)
La variable StringVar
self.text
est assignée à l’option textvariable
de self.buttonA
. Tkinter mettra à jour le texte de self.buttonA
automatiquement si self.text
est modifié.
Propriété text
de Tkinter Button pour modifier le texte du bouton
Une autre solution pour modifier le texte du bouton Tkinter est de changer la propriété text
du bouton.
import tkinter as tk
class Test:
def __init__(self):
self.root = tk.Tk()
self.root.geometry("250x100")
self.buttonA = tk.Button(self.root, text="Original Text")
self.buttonB = tk.Button(
self.root, text="Click to change text", command=self.changeText
)
self.buttonA.pack(side=tk.LEFT)
self.buttonB.pack(side=tk.RIGHT)
self.root.mainloop()
def changeText(self):
self.buttonA["text"] = "Updated Text"
app = Test()
Le text
est une clé de l’objet Button
dont le texte peut être initié avec text="Original Text"
et peut également être mis à jour en attribuant la nouvelle valeur à text
.
La méthode tk.Button.configure()
pourrait aussi changer la propriété text
pour modifier le texte de Tkinter Button
, comme indiqué ci-dessous.
import tkinter as tk
class Test:
def __init__(self):
self.root = tk.Tk()
self.root.geometry("250x100")
self.buttonA = tk.Button(self.root, text="Original Text")
self.buttonB = tk.Button(
self.root, text="Click to change text", command=self.changeText
)
self.buttonA.pack(side=tk.LEFT)
self.buttonB.pack(side=tk.RIGHT)
self.root.mainloop()
def changeText(self):
self.buttonA.configure(text="Updated Text")
app = Test()
Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.
LinkedIn FacebookArticle connexe - Tkinter Button
- Comment transmettre des arguments à la commande du bouton Tkinter
- Comment fermer une fenêtre Tkinter avec un bouton
- Comment changer l'état du bouton Tkinter
- Comment créer une nouvelle fenêtre en cliquant sur un bouton dans Tkinter
- Comment lier plusieurs commandes au bouton Tkinter
- Comment changer la taille des boutons Tkinter