Goal for this part
Replace a single label with a structured shell: menu bar, header, body pane, and status bar. You will use an application class that subclasses tk.Tk.
Concepts: geometry managers
Tkinter lays out widgets with pack, grid, or place. This project prefers grid for multi-pane shells and pack for simple toolbars. Mixing both in the same parent is a common source of confusing bugs—pick one per container.
class StackhavenApp(tk.Tk):
def __init__(self):
super().__init__()
self.title("Stackhaven Library")
self.geometry("720x420")
# menu + header + body + status...How to run it and what you should see
Run 02-Layout. You should see File/Help menus, a header labeled Stackhaven Library, a body placeholder, and a status bar. Choosing Help → About should update the status text.