This example uses several forms. The first form has its FormStyle property set to MDIForm. The others have their FormStyle properties set to MDIChild and their Visible properties set to True. Add a main menu component and name one of the menu items MyArrangeIcons. This is the code for the MyArrangeIconsClick handler. When you choose the ArrangeIcons command, minimized child forms are arranged so that they are evenly spaced and do not overlap. Do not name the menu items "ArrangeIcons", as that will override the TForm method.
procedure TForm1.MyArrangeIconsClick(Sender: TObject); begin Form1.ArrangeIcons; end;