If you shrink the main window, then show/hide the toolbar or the status area. It jumps back to its original size. The culprit are the pack() statements. Replacing them with validate() does the trick. I looked over the code to see if we have the problem elsewhere.