Einzelnen Beitrag anzeigen

Benutzerbild von Harry Stahl
Harry Stahl

Registriert seit: 2. Apr 2004
Ort: Bonn
2.479 Beiträge
 
Delphi 11 Alexandria
 
#6

AW: Delphi 10.2 Firemonkey: TFlowLayout Höhe automatisch ändern

  Alt 20. Jul 2017, 22:19
Eigentlich brauchst Du ja nur das eine Control, das am Tiefsten steht mit der größten Höhe. Aus der Summe von Top+Height erhältst Du dann den äußersten unteren Rand, der noch angezeigt werden muss und somit die notwendige Höhe Deines FlowLayouts.

Das könnte man z.B. so erledigen:

Delphi-Quellcode:
procedure TForm89.bnResizeFlowLayOutClick(Sender: TObject);
var
  L: Integer; AMax, ABot: Extended;
begin
  AMax := 0;

  for L := 0 to FlowLayout1.ChildrenCount-1 do begin
    ABot := TControl (FlowLayout1.Children[L]).Position.Y + TControl (FlowLayout1.Children[L]).height;
    if ABot > AMax then AMax := ABot;
  end;

  FlowLayout1.Height := AMax;
  FlowLayout1.Repaint;
end;
  Mit Zitat antworten Zitat