Comment mettre à jour le texte du bouton Tkinter
-
Utilisez
StringVarpour modifier le texte du bouton Tkinter -
Propriété
textde 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
textMé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
