Как получить текст на этикетке Tkinter

  1. cget Метод получения text Значение опции Метка
  2. Чтение значения ключа text словаря объектов метки для получения метки Текст
  3. Используйте Stringvar, чтобы получить текст Label

В этом уроке мы расскажем, как получить текст Tkinter Label нажатием кнопки.

cget Метод получения text Значение опции Метка

Виджет Tkinter Label не имеет специального метода get для получения текста в метке. Он имеет cget метод для возврата значения указанной опции.

labelObj.cget("text")

Он возвращает свойство/опиона текста объекта Label - labelObj.

Полный рабочий пример метода 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()

Чтение значения ключа text словаря объектов метки для получения метки Текст

Объект метки также является словарем, поэтому мы можем получить его текст, нажав клавишу text.

Полный рабочий пример

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()

Используйте Stringvar, чтобы получить текст Label

StringVar - один из типов конструктора Tkinter для создания строковой переменной Tkinter.

После того, как мы связали переменную StringVar с виджетами Tkinter, мы могли получить текст метки, прочитав значение переменной 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()

Метод get() переменной StringVar возвращает её значение, которое в данном примере связано с текстом метки.

Сопутствующая статья - Tkinter Label

  • Как изменить размер шрифта этикетки Tkinter
  • Как скрыть, восстановить и удалить Tkinter виджеты
  • Как изменить текст этикетки Tkinter
  • Как установить границу виджета метки Tkinter
  • comments powered by Disqus