O'Reilly logo

Learning Java, 3rd Edition by Jonathan Knudsen, Patrick Niemeyer

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Chapter 19. Layout Managers

A layout manager arranges the child components of a container, as shown in Figure 19-1. It positions and sets the size of components within the container’s display area according to a particular layout scheme. The layout manager’s job is to fit the components into the available area while maintaining some spatial relationships among them. AWT and Swing come with several standard layout managers that will collectively handle most situations; you can make your own layout managers if you have special requirements.

A layout manager at work

Figure 19-1. A layout manager at work

Every container has a default layout manager. When you make a new container, it comes with a LayoutManager object of an appropriate type. You can install a new layout manager at any time with the setLayout() method. For example, we can set the layout manager of a Swing container’s content pane to a type called BorderLayout like so:

    mycontainer.getContentPane().setLayout( new BorderLayout() );

Notice that although we have created a BorderLayout, we haven’t bothered to save a reference to it. This is typical; after installing a layout manager it usually does its work behind the scenes, interacting with the container. You rarely call the layout manager’s methods directly, so you don’t usually need a reference (a notable exception is CardLayout ). However, you do need to know what the layout manager is going to do ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required