对于我正在创建的棋盘游戏程序,我通过使用canvas.create_rectangle循环遍历行和列来绘制棋盘。我希望它看起来像一个网格,所以每个矩形都有一个边框。
目前我所拥有的是:
def draw_board(canvas, width, height, n):
for row in range(n+1):
for col in range(n+1):
canvas.create_rectangle(row*height/n,col*width/n,(row+1)*height/n,(col+1)*width/n,width=0,fill='white',outline='black')
from Tkinter import *
import math
width = 500
height = 500
n = 10
window=Tk()
window.title('Color grid')
canvas=Canvas(window,width=width,height=height,highlightthickness=0)
canvas.grid(row=0,column=0,columnspan=5)
draw_board(canvas, width, height, 10)
window.mainloop()
但是,当我运行程序时,大纲不会出现,我最终只会得到一个白色窗口。
答案 0 :(得分:1)
只需查看您的代码。
canvas.create_rectangle(row*height/n,col*width/n,(row+1)*height/n,(col+1)*width/n,width=0,fill='white',outline='black')
来自TKinter参考:
宽度 - 边框宽度。默认值为1像素。使用width = 0使边框不可见。
您将宽度设置为0.因此它是不可见的。这就是为什么你只看到一个白色的窗口。
编辑:此外,您不需要outline='black'
,因为这是默认设置。