【发布时间】:2019-05-06 11:24:06
【问题描述】:
我想使用 Tkinter 中的 for 循环每边绘制 8 帧。先一白,后一黑(像棋盘)。
from tkinter import *
window = Tk()
window.title("pyChess")
window.geometry("523x523+250+0")
window.configure( background = 'brown')
x1 = 0
y1 = 0
x2 = 65
y2 = 65
j1 = 65
k1 = 0
j2 = 130
k2 = 65
for i in range(8):
i = Canvas(window, width=520, height=1000)
i.create_rectangle(x1, y1, x2, y2, fill="white")
x1 += 130
x2 += 130
i.create_rectangle(j1, k1, j2, k2, fill="black")
j1 += 130
j2 += 130
i.pack()
window.mainloop()
我编写了这段代码,但它没有给我八帧。它只是打开了一个空白屏幕。我能为它做些什么?
【问题讨论】:
-
为什么要创建 8 个画布?只需创建一个画布就足够了。而且您的代码将仅显示创建的最后一个画布,因为您在 for 循环之外调用了 pack()。