我正在使用tkinter GUI处理骰子滚轮。它有各种类型骰子的列,以及掷骰子数量的行。每次重新掷骰子时都需要更新约120个标签。
我尝试使用包含StringVars的多级字典来刷新标签,以避免必须单独定义每个StringVar。
目前所做的只是说
AttributeError:' NoneType'对象没有属性' tk'
以下是相关代码:
from random import randint
results = MultiLevelDictClass()
def roll_dice(num,die):
result = 0
for dice in range(0,num,1):
result += randint(1,die)
return result
def refresh(*args):
for dice in [2,4,6,8,10,12,20]:
for num in range(1,21,1):
results[dice][num] = StringVar()
results[dice][num].set(str(roll_dice(num,dice)))
refresh()
我知道对n级词典的一般回应是否定的,但问题也适用于1级词典。
答案 0 :(得分:0)
您必须在创建StringVars之前创建根窗口。