从类外部更改Tkinter标签
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从类外部更改Tkinter标签相关的知识,希望对你有一定的参考价值。
我想从创建框架的类的外部更改标签中的文本。
这是我减少的当前代码。
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")
我最终获得了一个新标签(我猜测我创建的标签的新实例堆叠在最后一个标签之上)。
答案
你永远不会pack
你创建的MyWindow
实例并调用run
,而是你pack
一个你没有更改Label文本的新实例。
更改
MyWindow(root).pack()
至
run.pack()
以上是关于从类外部更改Tkinter标签的主要内容,如果未能解决你的问题,请参考以下文章