Cómo obtener el texto de la etiqueta Tkinter
-
cgetMétodo para obtener eltextValor de la opción de TkinterLabel -
Leer el valor de la clave
textdel diccionario de objetos de la etiqueta para obtener el texto de laLabelde Tkinter -
Usa
StringVarpara obtener el texto deLabelde Tkinter
En este tutorial, introduciremos cómo obtener el texto Tkinter Label haciendo clic en un botón.
cget Método para obtener el text Valor de la opción de Tkinter Label
El widget de Tkinter Label no tiene un método específico de get el texto de la etiqueta. Tiene un método cget para devolver el valor de la opción especificada.
labelObj.cget("text")
Devuelve la propiedad/opción text del objeto Label - labelObj.
Ejemplo de trabajo completo del método 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()
Leer el valor de la clave text del diccionario de objetos de la etiqueta para obtener el texto de la Label de Tkinter
Un objeto de etiqueta es también un diccionario, así que podríamos obtener su texto accediendo a la tecla "text".
Ejemplo de trabajo 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 para obtener el texto de Label de Tkinter
StringVar es un tipo de constructor de Tkinter para crear la variable de cadena de Tkinter.
Después de asociar la variable StringVar a los widgets de Tkinter, podríamos obtener el texto de la etiqueta leyendo el valor de la variable 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()
El método get() de la variable StringVar devuelve su valor, que está asociado con el texto de la etiqueta en este ejemplo.
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 Facebook