Layout Managers
Beyond these specialty panes with their dedicated layout
managers, the Swing package also includes some general layout managers
you can use with your own code. You can use the new BoxLayout to make things like toolbars and OverlayLayout to make things like layered labels.
The BoxLayout class is a
manager that gives you one row or column to put everything in. It’s
great for toolbars and button ribbons. It also comes with its very own
convenience container called Box. The
Box class is a lightweight container
that requires a BoxLayout manager.
While you can certainly use the BoxLayout class to control your own panel, frame, or other
container, the Box class provides
several shortcuts for dealing with components in a boxed layout. You’ll
often find that using a Box is easier
than creating a panel or frame that you control with a BoxLayout manager.
The Box Class
Let’s start with a look at the convenience container
that puts the BoxLayout manager to
use. The Box class is a lightweight
container object whose primary purpose is to let you add components to a horizontal or vertical box without having to think about getting the
constraints right. (As of SDK 1.4, Box extends JComponent.) You use the normal Container.add( ) method to place components
in the box. Components are placed left to right (or top to bottom) in
the order you add them.
Properties
Table 11-11
shows the properties of the Box
class. You are not allowed to change a box’s layout manager, so the
setLayout accessor ...