Tkinter 버튼 텍스트를 업데이트하는 방법

  1. Tkinter 버튼 텍스트를 변경하려면StringVar를 사용하십시오
  2. 버튼 텍스트를 변경하기위한 Tkinter Button text 속성

이 튜토리얼에서는 Tkinter 버튼 텍스트를 변경하는 방법을 소개합니다. Tkinter 레이블 텍스트 변경,

  • StringVar 메소드
  • 버튼text속성 방법

Tkinter 버튼 텍스트를 변경하려면StringVar를 사용하십시오

StringVar은 Tkinter 문자열 변수를 생성하는 Tkinter 생성자의 한 유형입니다.

StringVar 변수를 Tkinter Button위젯에 연관시킨 후, Tkinter는 변수가 수정 될 때이Button의 텍스트를 업데이트합니다.

import tkinter as tk

class Test():
    def __init__(self):
        self.root = tk.Tk()
        self.root.geometry("250x100")
        self.text = tk.StringVar()
        self.text.set("Original Text")
        self.buttonA = tk.Button(self.root, textvariable=self.text)

        self.buttonB = tk.Button(self.root,
                                text="Click to change text",
                                command=self.changeText)
        self.buttonA.pack(side=tk.LEFT)
        self.buttonB.pack(side=tk.RIGHT)
        self.root.mainloop()

    def changeText(self):
        self.text.set("Updated Text")        

app=Test()

Tkinter set 버튼 텍스트

self.text = tk.StringVar()
self.text.set("Original Text")

Tkinter 생성자는self.text = tk.StringVar("Text")와 같은 문자열로 문자열 변수를 시작할 수 없습니다.

self.text.set("Original Text")와 같은StringVar 값을 설정하려면 set 메소드를 호출해야합니다.

self.buttonA = tk.Button(self.root, textvariable=self.text)

StringVar 변수self.textself.buttonAtextvariable 옵션에 할당됩니다. Tkinter는self.text가 수정되면self.buttonA의 텍스트를 자동으로 업데이트합니다.

버튼 텍스트를 변경하기위한 Tkinter Button text 속성

Tkinter 버튼 텍스트를 변경하는 또 다른 솔루션은 버튼의text 속성을 변경하는 것입니다.

import tkinter as tk

class Test():
    def __init__(self):
        self.root = tk.Tk()
        self.root.geometry("250x100")

        self.buttonA = tk.Button(self.root,
                                 text="Original Text")

        self.buttonB = tk.Button(self.root,
                                text="Click to change text",
                                command=self.changeText)
        self.buttonA.pack(side=tk.LEFT)
        self.buttonB.pack(side=tk.RIGHT)
        self.root.mainloop()

    def changeText(self):
        self.buttonA['text'] = "Updated Text"        

app=Test()

texttext = "Original Text"로 시작될 수 있고text에 새로운 값을 할당함으로써 업데이트 될 수있는Button 객체의 하나의 키입니다.

tk.Button.configure()메소드는 아래에 표시된 것처럼 Tkinter Button의 텍스트를 변경하기 위해text 속성을 변경할 수도 있습니다.

import tkinter as tk

class Test():
    def __init__(self):
        self.root = tk.Tk()
        self.root.geometry("250x100")

        self.buttonA = tk.Button(self.root,
                                 text="Original Text")

        self.buttonB = tk.Button(self.root,
                                text="Click to change text",
                                command=self.changeText)
        self.buttonA.pack(side=tk.LEFT)
        self.buttonB.pack(side=tk.RIGHT)
        self.root.mainloop()

    def changeText(self):
        self.buttonA.configure(text = "Updated Text")        

app=Test()

관련 문장 - Tkinter Button

  • Tkinter 버튼에 여러 명령을 바인딩하는 방법