Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/276.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在从另一个函数生成的函数窗口中放置标签_Python_Function_Tkinter_Label - Fatal编程技术网

Python 在从另一个函数生成的函数窗口中放置标签

Python 在从另一个函数生成的函数窗口中放置标签,python,function,tkinter,label,Python,Function,Tkinter,Label,很简单,我必须用dado6函数中的标签“rispodado”替换appdadi中的标签“risdado” 但当我点击按钮“tira6”时,它给出了我的名称错误:没有定义全局名称“risdado” 我已经在另一个案例中使用了allready系统,它运行良好,不同之处在于目标(替换标签的位置)不是函数生成的窗口。 我是一个非常初学者,如果只是一个粗心的错误,对不起。 询问更多细节 from Tkinter import * from tkMessageBox import * from random

很简单,我必须用dado6函数中的标签“rispodado”替换appdadi中的标签“risdado”

但当我点击按钮“tira6”时,它给出了我的名称错误:没有定义全局名称“risdado”

我已经在另一个案例中使用了allready系统,它运行良好,不同之处在于目标(替换标签的位置)不是函数生成的窗口。
我是一个非常初学者,如果只是一个粗心的错误,对不起。
询问更多细节

from Tkinter import *
from tkMessageBox import *
from random import *

#DICE 6
#---------
def dado6():
    risdado.pack_forget()
    a=randint(1,6)
    rispodado=Label(appdadi, text=a, font=(Helvetica, 20)).pack()


#DICE APP
#-------
def dadi():
    appdadi=Tk()
    appdadi.resizable(0,0)
    dicepace1=Label(appdadi, bg="#009E71", width=40).pack(fill=X)
    labdadi=Label(appdadi, text="- D & D - DICE -", font=("Helvetica", 12), fg="White", bg="#009E71").pack(fill=X)
    dicespace2=Label(appdadi, bg="#009E71").pack(fill=X)
    dicespace3=Label(appdadi,).pack()

    tira6=Button(appdadi, text="dado da 6", command=dado6).pack()
    tira21=Button(appdadi, text="dado da 21").pack()
    tira100=Button(appdadi, text="dado da 100").pack()

    risdado=Label(appdadi, text="--------")
    risdado.pack(anchor=S)

您想替换实际的标签小部件,还是只替换小部件上显示的文本?所有小部件,但位置相同。正如您所看到的,新标签的名称有所不同。但是,如果可能,只替换文本(这将是目标)。@HANZO您可以通过使用
config
方法设置标签的
text
属性来更改标签的文本,如果您需要:
my_label.config(text=“new_text”)
它给了我同样的问题:NameError:没有定义全局名称“risdado”
risdado
是一个局部变量。您是否知道局部变量是什么,以及它与全局变量有何不同?你可能想读书