Hi, one of the design features
of many Tk list type widgets, is that they tend to keep an internal counter of all the list changes. For instance say you add 100 entries, internally they would be labeled 0..99. Now if you delete 0..99, and then try to add another fresh 100, their internal counter would range from 100... 199, even though you think of them as 0..99 because of their appearance on the screen.
So, just as with everything else in this world, it is best to learn to reuse things.
An example is here: Tk::TableMatrix Memory Usage.