我现在正在写一个吊人游戏。使用Tkinter for GUI。你知道吗
如何从函数中获取字符串:
def startgame():
player21abel=Label(text=" Guess a Letter ",fg="black").place(x=10,y=60)
mbutton=Button(text=" Press to summit ",command=guess).place(x=220,y=100)
player2=StringVar()
player2input=Entry(textvariable=player2).place(x=220,y=56)
test=""
uetext=utext.get()
def guess():
test=player2.get()
test=""
player2=StringVar
print (test)
我得到一个错误:
line 16, in guess
test=player2.get()
UnboundLocalError: local variable 'player2' referenced before assignment
我想从player2input获取文本框输入,并在函数guess上处理它。但它不承认它是一个字符串??你知道吗
必须将其作为参数传递给函数。你知道吗
要在
tkinter
中执行此操作,请查看以下答案:https://stackoverflow.com/a/6921225/1165441你所需要做的就是使用一个lambda来调用你想要的参数的函数。你知道吗
您需要重新排列代码,但命令属性如下所示:
编辑:我想说@mgilson发布的答案是解决问题的更正确的方法,但是理解如何使用lambdas将参数传递给tkinter命令回调也是您应该理解的。你知道吗
player2
在guess
命名空间中不存在。在函数之间共享数据的典型方法是使用类:然后你就可以按如下方式来处理它:
请注意,您还有许多其他错误,您没有将父小部件传递给标签/条目/按钮,通常应该创建一个小部件,然后在单独的行中使用它的几何管理器。否则您的引用都将是
None
。e、 g相关问题 更多 >
编程相关推荐