Keep these rules in mind about the packer:
Pack vertically (-side top and -side bottom) or horizontally (-side left and -side right) within a frame. Only rarely will a different mixture of packing directions work out the way you want. Add frames to build more complex structures.
By default, the packer puts widgets into their parent frame, and the parent frame must be created before the children that are packed into it.
If you put widgets into other relatives, remember to create the frames first so the frames stay underneath the widgets packed into them.
By default, the packer ignores -width and -height attributes of frames that have widgets packed inside them. It shrinks frames to be just big enough to allow for its border width and ...