我的一个画布没有显示在 Tkinter 窗口中(Python)



我正在尝试用两个画布制作一个Tkinter窗口:一个用于输入,一个用于结果。

这样做的原因是我找不到一种方法来清除下一个输入时的结果,所以如果有这样做的方法,那也会解决我的问题,但我没有找到解决这个问题的方法。

问题是第二个画布不会显示在窗口上。我试着马上在上面涂点东西,但还是不管用。同样,在寻找解决方案时,我发现了一个我自己尝试过的代码,然后它就工作了。

代码如下:

root = tk.Tk() #I used import tkinter as tk
canvas = tk.Canvas(root, width = 400, height = 200)
canvas.pack(side='top', anchor='nw', fill='x')
canvas2 = tk.Canvas(root, width = 400, height = 600)
canvas.pack(side='top', anchor='nw', fill='both')

您输入的是canvas.pack(side='top', anchor='nw', fill='both')而不是canvas2.pack(side='top', anchor='nw', fill='both')。下面是更正后的代码:

import tkinter as tk
root = tk.Tk()
canvas = tk.Canvas(root, width=400, height=200, bg="red")
canvas.pack(side='top', anchor='nw', fill='x')
canvas2 = tk.Canvas(root, width=400, height=600, bg="blue")
canvas2.pack(side='top', anchor='nw', fill='both')
root.mainloop()

最新更新