For tabbing between controls e.g text boxes you open up the Properties explorer and edit the value TabIndex. E.g if i was on a control with TabIndex1 and hit tab then i would move to whatever control had TabIndex 2.
The way we always did it was to start from the last control on the form and enter 0 for the table order. By doing this any control currently set to 0 gets increased by 1, and so on up the line. Then you work your way through the controls in reverse order setting every one to 0. After you reach the first control and set it to 0 you should find the tab order now works perfectly
I don't actually know for sure but if I recall it's something like this. It takes a best guess based upon two factors, heirarchy and position on the form. So at the top level it will cycle through each control left to right and top to bottom, and when it reaches a container control (such as a frame) it will finish the controls in that before moving on to the next form level control.