Получаю ошибку в коде _tkinter.TclError: cannot use geometry manager pack inside . which already has slaves managed by grid
from tkinter import *
def new_label():
label=Label(root,text='123')
label.pack()
root=Tk()
root.config(bg='white')
root.geometry('400x400+250+250')
root.resizable(False,False)
Button(root,text='NewLabel',
width=30,command=new_label).grid(row=0,column=0)
root.mainloop()
Ответы (1 шт):
Автор решения: ganz
→ Ссылка
Ваша ошибка в том, что для окна root вы пытаетесь исспользовать два различных менеджера расположений - grid & pack. Чтобы решить эту проблему используйте frame, которые изначально так же нужно поместить либо в grid либо в pack
from tkinter import *
def new_label():
label=Label(f,text='123')
label.pack()
root=Tk()
root.config(bg='white')
root.geometry('400x400+250+250')
root.resizable(False,False)
f=Frame(root)
f.grid(row=1,column=0)
Button(root,text='NewLabel',
width=30,command=new_label).grid(row=0,column=0)
root.mainloop()