Con*_*nor 6 python tkinter tkinter-canvas
我知道这canvas = tkinter.Canvas(bg='red')会创建一个背景色为红色的画布。由于背景颜色是在创建新画布时选择的,有什么方法可以稍后在程序中更改背景颜色而不创建新画布?
我能想到的最好的解决方案是创建一个大矩形,用所需的背景颜色覆盖整个屏幕,但实际的背景颜色在执行此操作后保持不变,并在清除画布时显示。
您可以使用configure所有小部件上存在的方法,并在 上调用它来canvas修改background选项:
您可以通过单击画布来更改背景颜色,如下例所示:
import tkinter as tk
def change_color(dummy_e):
canvas.configure(bg='cyan')
root = tk.Tk()
canvas = tk.Canvas(root, bg='red')
canvas.pack()
canvas.bind('<1>', change_color)
root.mainloop()
Run Code Online (Sandbox Code Playgroud)