An intuitive and flexible layout manager
Updated 28 Mar 2012

View License

GridLayout was inspired by the GridBagLayout manager. It is equally flexible but more intuitive for my taste and it also requires less boilerplate code.

Each cell is a uicontainer and can hold only one child. Unlike GridBagLayout, children are added at creation time by passing the cell container handle as their parent. No 'Add' methods are needed, which reduces the amount of code.

Cell sizes can be specified in pixels or as relative values. Merging and removing cells are supported, as well as various alignment options: stretch, center, left, right, top, bottom.

The archive also includes demos illustrating the GridLayout capabilities . Bug reports and suggestion for improvement are very much appreciated. Download, unpack, and enjoy!

Cite As

Mihail Petrov (2024). GridLayout (, MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2010b
Compatible with any release
Platform Compatibility
Windows macOS Linux
Find more on App Building in Help Center and MATLAB Answers

Inspired by: GridBagLayout


Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Published Release Notes

Forgotten to add ParseArgs and GetArg functions to the release.

Added support for:

1) axes with legends (as requested)

2) nested layouts (as requested)

3) automatic row/column sizing (experimental)

A few bugs were fixed and an additional demo added.