Python 在Tkinter中存储来自文本字段的输入
我想在调用按钮delete时调用方法Python 在Tkinter中存储来自文本字段的输入,python,tkinter,Python,Tkinter,我想在调用按钮delete时调用方法delImg。我使用了下面的代码段。但方法参数被突出显示为错误。我用了Tkinter,怎么纠正 import Tkinter import sys from Tkinter import * from tkFileDialog import askopenfilename root= Tk() enText =StringVar() #root.geometry("400*400+500+300") root.title("Welcome") de
delImg
。我使用了下面的代码段。但方法参数被突出显示为错误。我用了Tkinter,怎么纠正
import Tkinter
import sys
from Tkinter import *
from tkFileDialog import askopenfilename
root= Tk()
enText =StringVar()
#root.geometry("400*400+500+300")
root.title("Welcome")
def Hello():
mtext = enText.get()
mlabel2 = Label(root,text=mtext).pack()
print(mtext)
return mtext
def callback():
name= askopenfilename()
print name
return name
def delImg(m1,n1):
if(m1!=n1):
print("Error")
text = Entry(root,textvariable =enText).pack()
mbtn = Button(root,text="Enter",command=callback,fg='red').pack()
mbtn = Button(root,text="Ok",command=Hello,fg='red').pack()
mbtn = Button(root,text="Delete", command= lambda:
delImg(mtext,name),fg='red').pack()
#print(mtext)
root.mainloop()
mtext
和name
变量分别只存在于Hello
和Callback
函数的范围内
这意味着,即使您有一个mtext
变量,它也在Hello
函数内部,您不能从函数本身外部访问它
有两种方法可以使其进入全局范围-一种是使用将这些变量定义为代码中某个地方的全局变量(
global mtext
),或者只调用外部范围中的函数,并将返回值分配给将与delImg
函数一起使用的新变量。您缺少了一个(
在你的一行中。我希望你想要这个:delImg((多行文字,名称),fg='red').pack()
。这只是一个打字错误,还是像你原来的代码那样?非常感谢。佩雷拉:请阅读