当我尝试刷新我的 window 时,我的应用程序冻结(内部详细信息)

My app freeze when I try to refresh my window (detail inside)

我的 Tkinter 程序有问题。

我已将此代码添加到我的程序中:

def display():

  A1 = random.randint(1,7)
  A2 = random.randint(1,6)

  while True:
    Pion_Rouge_N(A1, A2)
    Pion_Jaune_N(A1, A2)
    time.sleep(5)

当我 运行 这段代码时,我的程序冻结...我需要用 killall 命令杀死 python3。

我看到了这个网站,但我无法将此解决方案应用到我的应用程序中:http://stupidpythonideas.blogspot.fr/2013/10/why-your-gui-app-freezes.html

这是我的全部代码:https://ghostbin.com/paste/7n5sw

这是一个简单的修复。取消缩进最后三行并完全删除 while 循环。然后在您的代码底部添加类似 root.after(5000, display) 的内容,这样每 5 秒就会调用一次显示。 root 应该是您存储在其中创建的 Tk() 对象的变量。此代码的示例如下所示:

def display():
    A1 = random.randint(1,7)
    A2 = random.randint(1,6)
    Pion_Rouge_N(A1, A2)
    Pion_Jaune_N(A1, A2)
    root.after(5000, display)