I have labels within a frame. That frame is embedded within a canvas that's set in a frame so that I could use a scrollbar. Prior to successfully setting up the frame-canvas-frame layout, my labels showed. Now the frame has no contents.
Here's what it looks like https://i.stack.imgur.com/aAFTm.png
I used Bryan Oakley's example to set up the frames. https://stackoverflow.com/a/3092341/22057493
My code is currently:
sessionframe = ttk.Frame(root)
sessionframe.grid(row=1, column=0, columnspan=3)
insuranceframe = ttk.Frame(root)
insuranceframe.grid(row=1, column=0, columnspan=3)
eframe = ttk.Frame(root) # put canvas in this frame
eframe.grid(row=1, column=0, columnspan=3)
ctracker_frame = ttk.Frame(root)
ctracker_frame.grid(row=1, column=0, columnspan=3)
def onFrameConfigure(canvas):
'''Reset the scroll region to encompass the inner frame'''
canvas.configure(scrollregion=canvas.bbox("all"))
canvas = tk.Canvas(eframe, width=600, height=800)
etracker_frame = tk.Frame(canvas)
vsb = tk.Scrollbar(eframe, orient="vertical", command=canvas.yview)
canvas.configure(yscrollcommand=vsb.set)
vsb.pack(side="right", fill="y")
canvas.pack(side="left", fill="both", expand=True)
canvas.create_window((4,4), window=eframe, anchor="nw")
etracker_frame.bind("<Configure>", lambda event, canvas=canvas: onFrameConfigure(canvas))
label = ttk.Label(etracker_frame, text='January')
label.grid(row=1, column=0, rowspan=8)
label = ttk.Label(etracker_frame, text='Attended Monthly')
label.grid(row=1, column=1)
label1 = ttk.Label(etracker_frame)
label1.grid(row=2, column=1)
label = ttk.Label(etracker_frame, text='Attended Weekly')
label.grid(row=3, column=1)
label2 = ttk.Label(etracker_frame)
label2.grid(row=4, column=1)
label = ttk.Label(etracker_frame, text='Canceled')
label.grid(row=5, column=1)
label3 = ttk.Label(etracker_frame)
label3.grid(row=6, column=1)
label = ttk.Label(etracker_frame, text='No Show')
label.grid(row=7, column=1)
label4 = ttk.Label(etracker_frame)
label4.grid(row=8, column=1)