HOWTO · Tkinter
Ottieni il testo dell'etichetta Tkinter
Questo tutorial mostra come ottenere il testo dell'etichetta Tkinter.
In questo tutorial, introdurremo come ottenere il testo Tkinter Label facendo clic su un pulsante.
Metodo cget per ottenere il valore dell’opzione text di Tkinter Label
Il widget Label di Tkinter non ha un metodo get specifico per ottenere il testo nell’etichetta. Ha un metodo cget per restituire il valore dell’opzione specificata.
labelObj.cget("text")
Restituisce la proprietà / opzione text dell’oggetto Label - labelObj.
Completo esempio di lavoro del metodo cget
import tkinter as tk
class Test:
def __init__(self):
self.root = tk.Tk()
self.root.geometry("200x80")
self.label = tk.Label(self.root, text="Text to be read")
self.button = tk.Button(
self.root, text="Read Label Text", command=self.readLabelText
)
self.button.pack()
self.label.pack()
self.root.mainloop()
def readLabelText(self):
print(self.label.cget("text"))
app = Test()
Leggere il valore della chiave text del dizionario degli oggetti dell’etichetta per ottenere il testo Label di Tkinter
Un oggetto etichetta è anche un dizionario Python, quindi potremmo ottenere il suo testo accedendo al tasto "text".
Esempio di lavoro completo
import tkinter as tk
class Test:
def __init__(self):
self.root = tk.Tk()
self.root.geometry("200x80")
self.label = tk.Label(self.root, text="Text to be read")
self.button = tk.Button(
self.root, text="Read Label Text", command=self.readLabelText
)
self.button.pack()
self.label.pack()
self.root.mainloop()
def readLabelText(self):
print(self.label["text"])
app = Test()
Usa StringVar per ottenere il testo Label Tkinter
StringVar è un tipo di costruttore Tkinter per creare la variabile stringa Tkinter.
Dopo aver associato la variabile StringVar ai widget Tkinter, potremmo ottenere il testo dell’etichetta leggendo il valore della variabile StringVar.
import tkinter as tk
class Test:
def __init__(self):
self.root = tk.Tk()
self.root.geometry("200x80")
self.text = tk.StringVar()
self.text.set("Text to be read")
self.label = tk.Label(self.root, textvariable=self.text)
self.button = tk.Button(
self.root, text="Read Label Text", command=self.readLabelText
)
self.button.pack()
self.label.pack()
self.root.mainloop()
def readLabelText(self):
print(self.text.get())
app = Test()
Il metodo get() della variabile StringVar restituisce il suo valore, che è associato al testo dell’etichetta in questo esempio.