I'm building an admin panel using Tkinter in Python. I'm using ttk. Treeview to display computed salary data. I call tree.insert(...) and the data is inserted — I can confirm the values by calling:
tree.get_children()
tree.item(child_id)["values"]
The rows exist. But visually, the Treeview remains blank — no rows are shown.
Test rows inserted at startup show correctly. Computed rows show in console but not in the Treeview. Column count and value count match (9 columns). No errors are thrown.
Here's how I define the Treeview:
tree = ttk.Treeview(parent, columns=(...), show="headings")
tree.pack(fill="both", expand=True)
for col in columns:
tree.heading(col, text=col)
tree.column(col, width=130, anchor="center")
What I’ve tried:
-Wrapping the Treeview in a dedicated Frame
-Calling update_idletasks()
-Validating the inserted value count
-Verifying with .get_children() and .item() that data exists
What else could cause rows to be invisible even when the data is confirmed present?