我试图在raspbian上创建一个tkinter(python 3)应用程序,但不会重复绘图

时间:2015-07-01 19:18:04

标签: python tkinter raspbian raspberry-pi2

我的代码如下;它应该重复绘制随机颜色和大小的圆圈,但只绘制一个。我尝试了无数的mainloop()和window1.update()组合,但总是遇到同样的问题。

#!/usr/bin/env python3
from tkinter import *
from random import *
WIDTH = 1024/2
HEIGHT = 720/2
window1 = Tk()
c1 = Canvas(window1, width=WIDTH, height=HEIGHT, bg='#FFFFFF')
c1.pack()
colours = ('#FF0000', '#00FF00', '#0000FF', '#FFFF00', '#FF00FF')
while 3 == 3:
    colchose = choice(colours)
    x0 = randint(0, WIDTH)
    y0 = randint(0, HEIGHT)
    c1.create_oval(x0, y0, x0+d, y0+d, fill=colchose)
    mainloop()

1 个答案:

答案 0 :(得分:0)

问题是你在最后一行调用mainloop()。一旦整个程序终止,此呼叫将结束 我建议你看一下Python的threading facilities。您可以创建另一个在主循环执行时绘制到画布上的线程。