不能在内部使用几何图形管理器包.它已经有了由网格管理的从窗口,尽管主窗口不同



我想使用网格来定位根中的帧,并使用pack来定位第一个帧中的按钮。主窗口不同,为什么会出现此错误?

root = Tk()
frame1 = LabelFrame(root, text="Frame1").grid(row=0, column=0)
frame2 = LabelFrame(root, text="Frame2").grid(row=0, column=1)

def open_file():
pass
btn_import_image = Button(frame1, text="Import", command=open_file)
btn_import_image.pack()

root.mainloop()

错误:

_tkinter.TclError: cannot use geometry manager pack inside . which already has slaves managed by grid

正如@Bryan Oakley在评论中指出的那样,使用grid()返回None。所以为了修复它,我不得不分开使用说明:

frame1 = LabelFrame(root, text="Frame1")
frame2 = LabelFrame(root, text="Frame2")
frame1.grid(row=0, column=0)
frame2.grid(row=0, column=1)

最新更新