import tkinter
Win=tkinter.Tk()
Welcome=tkinter.Label(Win,text="Welcome.")
Welcome.place(x=Win.winfo_width()//2-Welcome.winfo_reqwidth()//2,y=16)
Win.update()
Welcome.place(x=Win.winfo_width()//2-Welcome.winfo_reqwidth()//2,y=16)
print(str(Win.winfo_width()//2)+"-"+str(Welcome.winfo_reqwidth()//2)+"="+str(Win.winfo_width()//2-Welcome.winfo_reqwidth()//2))
Win.bind("<Configure>",func=lambda x:Welcome.place(x=Win.winfo_width()//2-Welcome.winfo_reqwidth()//2,y=16))
и
import tkinter
Win=tkinter.Tk()
Welcome=tkinter.Label(Win,text="Welcome.")
Win.update_idletasks()
Welcome.place(x=Win.winfo_width()//2-Welcome.winfo_width()//2,y=16)
Win.update()
Welcome.place(x=Win.winfo_width()//2-Welcome.winfo_width()//2,y=16)
print(str(Win.winfo_width()//2)+"-"+str(Welcome.winfo_width()//2)+"="+str(Win.winfo_width()//2-Welcome.winfo_width()//2))
Win.bind("<Configure>",func=lambda x:Welcome.place(x=Win.winfo_width()//2-Welcome.winfo_width()//2,y=16))
Кажется, все работает нормально, однако было бы полезно узнать реальную разницу между winfo_width
и winfo_reqwidth
.