有没有办法在Tkinter中使用画布的“默认颜色”?

时间:2012-12-02 03:24:58

标签: python tkinter tk tkinter-canvas

有没有办法可以设置画布对象的默认颜色(线条,矩形等),而无需单独设置每个画布对象?我知道默认颜色是黑色,我基本上只想改变它,以便我随后创建的所有内容都是绿色。有没有办法用Python中的Tkinter做到这一点?

1 个答案:

答案 0 :(得分:1)

不,无法设置默认颜色。但是,如果将颜色存储在变量中,则可以在创建新项目时使用该颜色。

self.my_color = "red"
...
self.canvas.create_rectangle(..., fill=my_color)

您还可以通过向itemconfigure方法提供ID“all”来一次更改所有对象。例如:

self.my_color = "green"
self.canvas.itemconfigure("all", fill=self.my_color)

有关商品标识符的更多信息(包括特殊的“所有”标识符),请参阅Item Specifiers: Handles and Tags上的effbot.org以及Tags section in the canvas tutorial上的tkdocs.com