如何解决Tkinter StringVar在标签上显示随机数而不是变量
标题说明了一切。
import tkinter as tk
from tkinter import filedialog,Text,StringVar
root = tk.Tk()
root.resizable(False,False)
var1 = StringVar()
topn = ""
print(topn)
def addApp():
global topn
topn = topn + "1"
print(topn)
var1.set(topn)
canvas = tk.Canvas(root,height=500,width=400,bg="#263D42")
canvas.pack()
frame = tk.Frame(root,bg="orange")
frame.place(relwidth=0.8,relheight=0.8,relx=0.1,rely=0.1)
Resultlabel = tk.Label(root,text=var1.get,padx=100,pady=5,fg="white",bg="grey")
Resultlabel.pack()
t
openFile = tk.Button(frame,text="Open File",padx=10,bg="#263D42",command=addApp)
openFile.pack()
root.mainloop()
[btw,忽略打开文件,我正在遵循一个教程来学习tkinter的基础知识,然后编辑代码以适合我的需求。我忘了更改按钮中的文本。]
https://i.stack.imgur.com/2FVKG.png
解决方法
text
与textvariable
不同。 text
用于将静态文本与窗口小部件关联,textvariable
用于使窗口小部件的文本与变量的值同步。
如果您希望ResultLabel
始终显示var1
中的内容,则必须这样定义:
Resultlabel = tk.Label(root,textvariable=var1,padx=100,pady=5,fg="white",bg="grey")
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。