row1a = Canvas(firstFrame,width=54,height=54,bg="gray")
row1a.pack(side=LEFT)
row1b = Canvas(firstFrame,width=54,height=54,bg="gray40")
row1b.pack(side=LEFT)
row1c = Canvas(firstFrame,width=54,height=54,bg="gray")
row1c.pack(side=LEFT)
row1d = Canvas(firstFrame,width=54,height=54,bg="gray40")
row1d.pack(side=LEFT)
row1e = Canvas(firstFrame,width=54,height=54,bg="gray")
row1e.pack(side=LEFT)
row1f = Canvas(firstFrame,width=54,height=54,bg="gray40")
row1f.pack(side=LEFT)
row1g = Canvas(firstFrame,width=54,height=54,bg="gray")
row1g.pack(side=LEFT)
row = 1
column = b
有没有一种方法可以使用canvas.config(bg =“ blue”)之类的东西来更新“ row1b”画布的颜色。
这些画布有很多,所以我不能为每个画布真正使用row1b.config(bg =“ blue”)。
谢谢!
答案 0 :(得分:0)
与任何小部件一样,创建后可以更改其选项。
由于要创建许多画布,所以最好的解决方案是将它们存储在列表或字典中。由于您似乎想用数字和字母来引用它们,因此词典可能是最好的解决方案。
例如,要循环创建画布对象,您可以执行以下操作:
createThingFormData: {},
createThingFormErrors: {},
createThingFormRules: {
thingName: { required: true },
}
稍后,您可以通过canvases = {}
row = 1
for column in ('a', 'b', 'c', 'd', 'e', 'f', 'g'):
index = (row, column)
canvases[index] = Canvas(...)
字典和canvases
命令更改任何单一画布的颜色:
configure