在画布上放置变量和其他文本
我想从用户输入中获取一个变量,然后把这个变量放到画布上,比如说如果他们选择了'250',就显示'谁先到250就赢了!'。
def GameLengthTwoPlayer():
canvas.delete(ALL)
global tk
def print_it(event):
global name
name = var.get()
TwoPlayer()
var = IntVar()
var.set("Choose the Score Limit")
optmen = OptionMenu(tk, var, 20,50,100,250,500,1000, command=print_it)
optmen.configure(width = 20)
optmen_window = canvas.create_window(350,400, window=optmen)
这个代码是用下拉框来获取用户的输入。不过,当我试着把变量'name'放进canvas.create_text的时候,它不工作。
global name
obj= name
str(obj)
canvas.create_text(350, 355, fill='red', font =('Bauhaus 98',20), text='Testing' + obj + 'test')
canvas.pack() #Packs canva
我遇到了一个错误,提示'TypeError: Can't convert 'int' object to str implicitly',但我不是已经把它转成字符串了吗?
如果有人能帮我解决这个问题,那就太好了。
1 个回答
1
你把它变成了一个字符串,但你没有把它保存到任何地方。
global name
obj= str(name)
canvas.create_text(350, 355, fill='red', font=('Bauhaus 98', 20), text='Testing' + obj + 'test')
canvas.pack() # 打包画布