我正在尝试用两个画布制作一个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()