HOWTO · Tkinter

Wie Sie den Text des Tkinter-Etiketts erhalten

Dieses Tutorial demonstriert, wie man den Tkinter-Etikettentext erhält.

Auf dieser Seite

In diesem Tutorial stellen wir Ihnen vor, wie Sie den Tkinter Label Text durch Klicken auf eine Schaltfläche erhalten.

cget Methode, um den text Optionswert von Tkinter Label zu erhalten

Das Tkinter Label-Widget hat keine spezielle get-Methode, um den Text im Label zu erhalten. Es hat eine cget-Methode, um den Wert der angegebenen Option zurückzugeben.

labelObj.cget("text")

Es gibt die text-Eigenschaft/Option des Label-Objekts - labelObj - zurück.

Vollständiges Arbeitsbeispiel der cget-Methode

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

Wert des Schlüssel- Textes des Label-Objekt-Verzeichnisses lesen, um Tkinter- Label-Text zu erhalten

Ein Label-Objekt ist auch ein Dictionary, so dass wir seinen Text durch Zugriff auf die "text"-Taste erhalten könnten.

Vollständiges Arbeitsbeispiel

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

Verwenden Sie StringVar, um den Tkinter Label-Text zu erhalten

StringVar ist ein Typ des Tkinter-Konstruktors zur Erstellung der Tkinter-Zeichenkettenvariablen.

Nachdem wir die StringVar-Variable mit den Tkinter-Widgets verknüpft haben, könnten wir den Text der Beschriftung erhalten, indem wir den Wert der StringVar-Variablen lesen.

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

Die get()-Methode der StringVar-Variablen gibt ihren Wert zurück, der in diesem Beispiel mit dem Label-Text verknüpft ist.