Como obter o texto da etiqueta do Tkinter
-
Método para obter o valor da opção
text
do TkinterLabel
- Leia o valor do texto chave do dicionário de objetos de etiqueta para obter o texto da etiqueta do Tkinter
-
Utilize
StringVar
para obter o texto do TkinterLabel
Neste tutorial, vamos apresentar como obter o texto Tkinter Label
clicando em um botão.
Método para obter o valor da opção text
do Tkinter Label
O Tkinter Label
widget não tem um método específico get
para obter o texto no rótulo. Ele tem um método cget
para retornar o valor da opção especificada.
labelObj.cget("text")
Ele retorna a propriedade/opção text
do objeto Label
- labelObj
.
Exemplo completo de funcionamento do 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()
Leia o valor do texto chave do dicionário de objetos de etiqueta para obter o texto da etiqueta do Tkinter
Um objeto de etiqueta também é um dicionário, para que pudéssemos obter seu texto acessando a chave "text"
.
Exemplo de trabalho 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()
Utilize StringVar
para obter o texto do Tkinter Label
StringVar
é um tipo de construtor de Tkinter para criar a variável string Tkinter.
Depois de associarmos a variável StringVar
aos widgets Tkinter, poderíamos obter o texto da etiqueta lendo o valor da variável 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()
O método da variável StringVar
retorna seu valor, que está associado ao texto da etiqueta neste exemplo.
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