In an existing form with heaps of code, you get to a stage where you have expanded visually and are now at the verge of running out of screen space, and you dont want to break your existing code or bother with having to split your form into seperate forms . Or alternatively, your users are dumbos and you cannot confuse them by giving them too many paralell choices.
The FrameWizard class implements a basic forward / backward movement through frames on a form. The BeforeFrameChange event allows you to cancel the pending frame change. The FrameChanged event returns the current active frame number. All the logic is encapsualted in the class away from the form. It is easier to use than the one supplied with VB6.
Future versions of this will allow you to specify a linked hierarchical structure that will allow the navigation path to change dynamically depending on the user's input. Also , an activeX control could also be an option. I don't create many activeX controls as it is a schlep for me. If you want to convert this code to an OCX, modify it, or just comment on it, then please post back with your code or comments.