Python 如何使用Tkinter从其他函数重新指定标签文本

Python 如何使用Tkinter从其他函数重新指定标签文本,python,tkinter,Python,Tkinter,(首次使用Stackoverflow) 如何将按钮函数中的标签文本重新分配给Ctrack函数中的变量?您可以赋予Ctrack()函数在根窗口上张贴标签的功能。 如果使用这种方法,可以在Ctrack()中添加'root'作为参数,然后在Ctrack()函数中声明并打包标签。您必须在按钮()内将其声明为全局变量(全局winlabel),然后在Ctrack()内调用它,就像winlabel[/text']='What ever Your want'您的代码将引发异常:name错误:未在winlabel

(首次使用Stackoverflow)

如何将按钮函数中的标签文本重新分配给Ctrack函数中的变量?

您可以赋予Ctrack()函数在根窗口上张贴标签的功能。
如果使用这种方法,可以在Ctrack()中添加'root'作为参数,然后在Ctrack()函数中声明并打包标签。

您必须在
按钮()
内将其声明为全局变量(
全局winlabel
),然后在
Ctrack()内调用它,就像
winlabel[/text']='What ever Your want'
您的代码将引发异常:
name错误:未在
winlabel=Label(root,text=labeltext)
行定义名称'labeltext'。
from tkinter import *




# reassigns variables for label and button texts
def Ctrack(vname, vvalue):
    #global vname
    vname = vvalue
    
    #place holder to check which button has been clicked
    print(vname)
    
    #labeltext = reassign label text bas
    
    
# creates labels and buttons
def buttons():
    root = Tk()
    
    #first label
    
    winlabel = Label(root, text =labeltext )
    winlabel.grid(row = 0, column = 1, padx = 10, pady = 10)
    
    #first button
    but1 = Button(root, text = "button 1", command = lambda *args: Ctrack(0, 1))
    but1.grid(row = 0, column = 2, padx = 10, pady = 10)
    
    #second button
    but2 = Button(root, text = "button 2", command = lambda *args: Ctrack(0, 2))
    but2.grid(row = 0, column = 3, padx = 10, pady = 10)
    
    root.mainloop()

buttons()