Cómo obtener el texto de la etiqueta Tkinter
-
cget
Método para obtener eltext
Valor de la opción de TkinterLabel
-
Leer el valor de la clave
text
del diccionario de objetos de la etiqueta para obtener el texto de laLabel
de Tkinter -
Usa
StringVar
para obtener el texto deLabel
de 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