我目前正在制作一个垄断游戏,我想展示我的玩家在标签上滚动的内容。我有一个文件dice.py,它有一个掷骰子的功能卷(使用random.randint(1,6)
两次,并添加它们)。我使用while True
来测试它,但它给了我这个错误:
TypeError: 'int' object does not support item assignment
当我做的时候
str = ''
strlabel = canvas.create_text(553, 275, text = str, fill='snow3', font=('Times New Roman', 24))
while True:
roll = dice.roll()
str = 'You just rolled a %d!' %(roll)
strlabel["text"] = "hey"
var2 = raw_input()
raw_input只是在每个卷之间暂停。我在Tkinter上找不到多少,所以有人能告诉我更新文本的语法吗?
答案 0 :(得分:2)
canvas.create_text不会创建新标签。它在画布中创建一个新项(文本)并返回所创建项的id(一个int)。
您必须使用itemconfigure方法配置项目:
canvas.itemconfigure(strlabel, text='You just rolled a %d!'%(roll))