Resizable table using main window resize as redraw trigger. Create an item_resize_handler that calls the table redraw, and bind the main window to it. import dearpygui.dearpygui as dpg import random import string DEBUG = 1 def generate_entries(): entries = [] for x in range(1, 10): entry = {} for y in ["A", "B", "C", "D", "E"]: entry[y] = "".join(random.SystemRandom().choices(string.ascii_uppercase, k=6)) entries.append(entry) return entries def draw_entry_table(parent, entries): if dpg.does_item_exist("entry_table"): dpg.delete_item("entry_table", children_only=False) table = dpg.add_table( tag="entry_table", header_row=True, parent=parent, resizable=True, borders_outerH=True, borders_innerH=True, borders_outerV=True, delay_search=True, policy=dpg.mvTable_Sizi