【问题标题】:How do I update my text in Tkinter?如何在 Tkinter 中更新我的文本?
【发布时间】:2014-02-10 10:13:13
【问题描述】:

我目前正在制作一款垄断游戏,我想在标签中显示我的玩家滚动的内容。我有一个文件 dice.py,它有一个掷骰子的函数 roll(使用 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 上找不到太多内容,所以有人可以告诉我更新文本语法吗?

【问题讨论】:

    标签: python-2.7 text tkinter typeerror


    【解决方案1】:

    canvas.create_text 不会创建新标签。它在画布中创建一个新项目(文本)并返回所创建项目的 id(一个 int)。

    你必须使用 itemconfigure 方法来配置项目:

    canvas.itemconfigure(strlabel, text='You just rolled a %d!'%(roll))
    

    【讨论】:

      猜你喜欢
      • 2015-02-14
      • 1970-01-01
      • 2016-07-07
      • 2014-07-13
      • 2022-11-29
      • 1970-01-01
      • 2021-04-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多