Und wo ist jetzt das Problem?
Im OnResize könnte man die FormGröße mit der
DesktopGröße ScreenGröße vergleichen und daran entscheiden, ob maximiert oder nicht,
oder einfach den WindowState der Form abfragen (wsMaximized).
Und dann jeweils entsprechend die Panels positionieren, sowie ein-/ausblenden (Visible).
NEIN, Minimize ist nicht
das Gegenteil die Umkehrung von Maximize.
Restore ist die Umkehrung.
p.s.:
TGridPanel, anstatt vieler Panels.
Erspart das Positionieren beim Start, sowie das OnResize,
(gab's das schon in der XE7? Glaub schon .... falls nicht, dann siehe Delphi Community Edition)
oder
Um die zwei oberen und die zwei unteren Panels nochmal je ein Panel und dann mit Align die Panels ausrichten. (oder die beiden links, sowie rechts)
Oben/links jeweils alClient und rechts/unten entsprechend alRight/alBottom ... und dann bei den Panels rechts/unten entsprechend des Maximized-Status das Visible setzen. (
xxx.Visible := IstMaximiert;
)
Ein Therapeut entspricht 1024 Gigapeut.