Einzelnen Beitrag anzeigen

PeterPanino

Registriert seit: 4. Sep 2004
1.465 Beiträge
 
Delphi 10.4 Sydney
 
#23

AW: Nicht-visuelle Komponenten dauerhaft ausblenden?

  Alt 30. Okt 2012, 17:11
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;
Angehängte Dateien
Dateityp: zip HideComps.zip (1,7 KB, 5x aufgerufen)
  Mit Zitat antworten Zitat