Layout Managers


MigLayout is a superbly versatile and powerful open-source layout manager. It is grid-based, but also supports docking and grouping.


JGoodies FormLayout

JFormDesigner provides outstanding support for JGoodies FormLayout. This includes column/row specifications (alignment, size, resize behavior), IntelliGap technology (automatically handles gap columns/rows) and column/row grouping (makes widths/heights equal). Other parts of the JGoodies Forms framework are also supported (DLU borders, component factory).


GroupLayout (Free Design)

GroupLayout Support for GroupLayout brings the "Free Design" paradigm to JFormDesigner. You can lay out your forms by simply placing components where you want them. Visual guidelines suggest optimal spacing, alignment and resizing of components. This makes it easy to design professional-looking GUIs.

GroupLayout has been developed by the NetBeans team and is also used by the NetBeans GUI Builder (formerly Project Matisse).

Clearthought's TableLayout

JFormDesigner supports all features of TableLayout and extends it with default component alignments.


Advanced GridBagLayout

The advanced GridBagLayout support allows the specification of horizontal and vertical gaps (as in TableLayout). This makes it very easy to design forms with consistent gaps using GridBagLayout. No longer wrestling with GridBagConstraints.insets. You can also left/top align the whole grid. View a demo video here.

With gaps and left/top aligned grid:

Pure GridBagLayout without gaps and grid alignment:

Standard layout managers

JFormDesigner supports following standard layout managers: BorderLayout, BoxLayout, CardLayout, FlowLayout, GroupLayout (Java 6), GridBagLayout and GridLayout.

SwingX layout managers

Support for SwingX layout managers HorizontalLayout and VerticalLayout makes it easier to use SwingX components (like JXTaskPaneContainer and JXCollapsiblePane) in JFormDesigner.

null layout manager support

null LayoutThe null Layout allows you to make quick prototypes. null layout is not a real layout manager. It means that no layout manager is assigned and the components can be put at specific x,y coordinates. JFormDesigner's null layout implementation supports preferred component sizes, grid snapping, aligning components and is able to compute the preferred size of the container.

Layout manager changing

Layout manager changing allows you to change the layout manager used by a container without loosing child components. The layout is converted to the new layout manager as good as possible. Right-click on a container in the Design or Structure view and select Set Layout Manager from the popup menu and choose the new layout manager.

Default alignment in GridBagLayout and TableLayout

Default alignmentAllows you to specify a default alignment for components within columns/rows in GridBagLayout and TableLayout (as in FormLayout). This is very useful for columns with right aligned labels because you specify the alignment only once for the column and all added labels will automatically aligned to the right.

Custom column/row templates for FormLayout

Custom column/row templatesIf the predefined FormLayout column/row templates does not fit to your needs, you can define your own column/row templates in the FormLayout preferences.