1. darf nur gemacht werden, wenn sich die Form im Designmodus und nicht im Ladevorgang befindet.
Gut, hab ich nun gemacht:
Delphi-Quellcode:
constructor TNonVisualArea.Create(Owner: TComponent);
begin
inherited;
Align := alBottom;
Height := 100;
if csDesigning in ComponentState then
begin
if Owner is TForm then
TForm(Owner).Height := TForm(Owner).Height + Height;
end;
end;
Ich habe jetzt auch Code hinzugefügt, damit die "nutzbare" Fläche der Form gleich bleibt, wenn der Nutzer von Unten nach Rechts oder zurück umschaltet:
Delphi-Quellcode:
procedure TNonVisualArea.SetRight(Value: Boolean);
begin
FRight := Value;
if FRight then
begin
Self.Parent.Height := Self.Parent.Height - Self.Height;
Align := alRight;
Self.Parent.Width := Self.Parent.Width + Self.Width;
end
else
begin
Self.Parent.Width := Self.Parent.Width - Self.Width;
Align := alBottom;
Self.Parent.Height := Self.Parent.Height + Self.Height;
end;
end;