This is more of a question of how people generally do things.
Often in programs involving a GUI, I need to have more than one logical 'screen', for example if you were filling in a form, you would click "Next" and the next 'screen' would appear showing completely different components etc.
The way I used to solve this problem was to close the current JFrame and then initialise a whole new JFrame passing the information to the next frame. However this feels contrived and a bad solution to a problem.
How do people usually solve this problem? Do they have multiple JPanels added to one standard frame, and then switch between them?