从班级外部更改Tkinter标签

时间:2018-09-05 14:29:00

标签: python class tkinter label

我想从正在创建框架的类的外部更改标签中的文本。

这是我现在大量删除的代码。

import tkinter as tk
import sys

class MyWindow(tk.Frame):
    def __init__(self, parent):
        tk.Frame.__init__(self, parent)
        self.label = tk.Label(self, text="Hello, world")
        self.label.pack()


root = tk.Tk()

run = MyWindow(root)
run.label.config(text = 'dddddddddd')


root.geometry('480x320')   
MyWindow(root).pack()
root.mainloop()

如果我更改

self.label = tk.Label(self, text="Hello, world")  

self.label = tk.Label(root, text="Hello, world")

我最终得到一个新标签(我猜是我在上一个标签的顶部堆叠的新标签实例)。

1 个答案:

答案 0 :(得分:0)

您永远不会pack创建并调用过MyWindow的{​​{1}}实例,而是run一个没有更改标签文本的新实例。

更改

pack

MyWindow(root).pack()