LayoutManager : Java Glossary

go to home page L words local find full screen, hide local find menu Google search web for more information on this topic jump to foot of page translate this page with Babelfish 2007-09-20 by Roedy Green ©1996-2008 Canadian Mind Products
index page for letter ⇒ punctuation 0-9 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z (all)
LayoutManager
The interface implemented by all layouts such as GridBagLayout. You don’t often use it explicity. You just pass a LayoutManager parameter.
// AWT
this.setLayout( new GridBagLayout() );

// Swing
Container contentPane = this.getContentPane();
contentPane.setLayout( new GridBaglayout() );

Writing your own LayoutManager is much easier than you might expect. A custom LayoutManager is much better than resorting to absolute positioning. See StarLayout for the source code for a simple LayoutManager. Basically all a LayoutManager has to do is assign a size to each Component in the Container, usually based on Component.getMinimumSize, getPreferredSize and getMaxiumumSize, and also assign each Component’s position relative to the top left corner of the Container.

There are two major benefits to writing your own LayoutManager.

  1. You neatly separate business from layout logic making maintenance easier.
  2. You can easily reuse the LayoutManager elsewhere without having to remember how it works.

Learning More

Sun’s Javadoc on the LayoutManager class : available:

CMP homejump to top
CMP logo
feedback Please email your feedback for publication, errors, omissions, broken/redirected link reports
and suggestions to improve this page to Roedy Green : feedback email
made with CSS
HTML Checked!
ICRA ratings logo
mindprod.com IP:[65.110.21.43]
Your face IP:[38.103.63.59] The information on this page is for non-military use only.
You are visitor number 9,077. Military use includes use by defence contractors.
You can get a fresh copy of this page from: or possibly from your local J: drive (Java virtual drive/mindprod.com website mirror)
http://mindprod.com/jgloss/layoutmanager.html J:\mindprod\jgloss\layoutmanager.html