https://tkdocs.com/tutorial/firstexample.html
1 from tkinter import * 2 from tkinter import ttk 3 4 5 def calculate(*args): 6 try: 7 value = float(feet.get()) 8 meters.set((0.3048 * value * 10000.0 + 0.5) / 10000.0) 9 except ValueError: 10 pass 11 12 13 root = Tk() 14 root.title("Feet to Meters") 15 mainframe = ttk.Frame(root, padding="3 3 12 12") 16 # mainframe = ttk.Frame(root) 17 mainframe.grid(column=0, row=0, sticky=(N, W, E, S)) 18 mainframe.columnconfigure(0, weight=1) 19 mainframe.rowconfigure(0, weight=1) 20 feet = StringVar() 21 meters = StringVar() 22 feet_entry = ttk.Entry(mainframe, width=7, textvariable=feet) 23 feet_entry.grid(column=2, row=1, sticky=(W, E)) 24 ttk.Label(mainframe, textvariable=meters).grid(column=2, row=2, sticky=(W, E)) 25 ttk.Button(mainframe, text="Calculate", command=calculate).grid(column=3, row=3, 26 sticky=W) 27 ttk.Label(mainframe, text="feet").grid(column=3, row=1, sticky=W) 28 ttk.Label(mainframe, text="is equivalent to").grid(column=1, row=2, sticky=E) 29 ttk.Label(mainframe, text="meters").grid(column=3, row=2, sticky=W) 30 for child in mainframe.winfo_children(): child.grid_configure(padx=5, pady=5) 31 32 for child in mainframe.winfo_children(): 33 print(child) 34 feet_entry.focus() 35 root.bind('<Return>', calculate) 36 root.mainloop()