Einzelnen Beitrag anzeigen

Volker Z.

Registriert seit: 3. Dez 2012
Ort: Augsburg, Bayern, Süddeutschland
419 Beiträge
 
Delphi XE4 Ultimate
 
#8

AW: 2 Panels sollen sich das Form gleichmäßig teilen -> Anchors ?

  Alt 18. Apr 2013, 22:46
Hallo,

über den OI geht es nicht vollständig, ein klein wenig rechnen wirst Du schon müssen.

Ich kenne das Dynamic Skin Pack nicht (vermute aber, dass die enthaltenen Panels von TPanel ableiten), mit der Standard-VCL-Panel ginge folgendes, um dass, was an den Screenshots zu erkennen ist, zu erreichen:
  1. Lege ein Panel auf das Form (Parentpanel) entsprechende Eigenschaften setzen (Align oder Anchor)
  2. Setzte die Eigenschaft BorderWidth des Parentpanel auf einen entsprechenden Wert z. B. 10
  3. Lege die sieben Panels auf das Parentpanel
  4. Von links nach rechts die ersten sechs Panels mit Align alLeft, das letzte alClient
  5. Von links nach rechts die ersten sechs Panels mit AlignWithMargins True, das letzte AlignWithMargins False
  6. Von links nach rechts die ersten sechs Panels Margin.Bottom, Margin.Left, Margin.Top 0 und Margin.Right z. B. 10
und dann noch etwas Code
Delphi-Quellcode:
procedure TForm4.ParentPanelResize(Sender: TObject);
var
  w : Integer;
begin
  w := (ParentPanel.Width - 2 * ParentPanel.BorderWidth - 6 * Panel1.Margins.Right) div 7;

  Panel1.Width := w;
  Panel2.Width := w;
  Panel3.Width := w;
  Panel4.Width := w;
  Panel5.Width := w;
  Panel6.Width := w
end;
Dann sollten sich die Panels nicht überlappen und alle die gleiche Größe haben (Panel7 kann natürlich ein paar Pixel größer bzw. kleiner sein).

Es sieht zumindest so aus, als wäre es was Du erreichen möchtest (siehe Screenshots hier mit nur 4 Panels).

Gruß
Miniaturansicht angehängter Grafiken
panel0.gif   panel1.gif  
Volker Zeller
  Mit Zitat antworten Zitat