Tkinter ラベルのテキストを取得する方法
    
    胡金庫
    2023年1月30日
    
    Tkinter
    Tkinter Label
    
- 
          
            Tkinter Labelのtextオプション値を取得するcgetメソッド
- 
          
            ラベルオブジェクトディクショナリのキー textの値を読み取り、TkinterLabelテキストを取得する
- 
          
            StringVarを使用して Tkinter のLabelテキストを取得する
 
このチュートリアルでは、ボタンをクリックして Tkinter Label テキストを取得する方法を紹介します。
Tkinter Label の text オプション値を取得する cget メソッド
    
Tkinter の Label ウィジェットには、ラベル内のテキストを取得するための特定の get メソッドがありません。指定したオプションの値を返す cget メソッドがあります。
labelObj.cget("text")
Label オブジェクトの text プロパティ/オプション-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 の値を読み取り、Tkinter Label テキストを取得する
ラベルオブジェクトも辞書なので、"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 を使用して Tkinter の 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()
StringVar 変数の get() メソッドは、この例のラベルテキストに関連付けられている値を返します。
        チュートリアルを楽しんでいますか? <a href="https://www.youtube.com/@delftstack/?sub_confirmation=1" style="color: #a94442; font-weight: bold; text-decoration: underline;">DelftStackをチャンネル登録</a> して、高品質な動画ガイドをさらに制作するためのサポートをお願いします。 Subscribe
    
著者: 胡金庫
    
