Einzelnen Beitrag anzeigen

Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.475 Beiträge
 
Delphi 12 Athens
 
#4

AW: ToolButtons einer ToolBar "verschieben"

  Alt 5. Jul 2023, 23:37
Die Reihenfolge der Buttons ergibt sich aus deren Position. Mit folgendem Code kannst du alle Buttons einer Toolbar unter Beibehaltung der Reihenfolge an eine andere Toolbar anhängen.
Delphi-Quellcode:
var
  i: Integer;
  L: Integer;
  tb: TToolButton;
begin
  while ToolBar2.ButtonCount > 0 do begin
    tb := ToolBar2.Buttons[0]; // immer den ersten Button
    if ToolBar1.ButtonCount = 0 then begin
      L := 0;
    end
    else begin
      L := ToolBar1.Buttons[ToolBar1.ButtonCount - 1].BoundsRect.Right + 1; // rechts vom letzten Button
    end;
    tb.Parent := nil; // damit das nachfolgende Setzen von Left auch klappt
    tb.Left := L;
    tb.Parent := ToolBar1;
  end;
end;
Du kannst natürlich auch nur einzelne Buttons übertragen, musst aber berücksichtigen, dass sich der Index aller nachfolgenden Buttons beim Herauslösen eines Buttons aus der Quell-Toolbar ändern.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat