AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

ToolButtons einer ToolBar "verschieben"

Ein Thema von tomkupitz · begonnen am 5. Jul 2023 · letzter Beitrag vom 6. Jul 2023
Antwort Antwort
tomkupitz

Registriert seit: 26. Jan 2011
339 Beiträge
 
Delphi 12 Athens
 
#1

ToolButtons einer ToolBar "verschieben"

  Alt 5. Jul 2023, 21:49
Hallo,

im angehängten Projekt "verschiebe" ich einige ToolButtons einer TB2 in eine TB1. Dabei wird aber die Reihenfolge vertauscht. Warum? Oder ist das ein Denkfehler.

Danke und beste Grüße
Angehängte Dateien
Dateityp: zip ToolBar.zip (89,9 KB, 2x aufgerufen)
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

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

AW: ToolButtons einer ToolBar "verschieben"

  Alt 5. Jul 2023, 22:18
Was genau willst du denn mit dem Code erreichen?
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
tomkupitz

Registriert seit: 26. Jan 2011
339 Beiträge
 
Delphi 12 Athens
 
#3

AW: ToolButtons einer ToolBar "verschieben"

  Alt 5. Jul 2023, 23:03
Es geht um die Anzeige einer themengebunden ToolBar mit entsprechenden ToolButtons. Z.B. immer: Neu, Öffnen, Speichern, dann aber Auswertung1 (mit mit eigenen ToolButtons) oder Auswertung2 (mit eigenen ToolButtons).

Das Bsp. ist nat. ein Trivial-Bsp. welches das Verhalten der ToolBar testet.

Idee ist aus einer ToolBar mit allen ToolButtons jeweils eine zweite ToolBar themenbezogen zu "bestücken".

Geändert von tomkupitz ( 5. Jul 2023 um 23:10 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.452 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
tomkupitz

Registriert seit: 26. Jan 2011
339 Beiträge
 
Delphi 12 Athens
 
#5

AW: ToolButtons einer ToolBar "verschieben"

  Alt 6. Jul 2023, 09:22
Danke dir, das funktioniert gut.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:29 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz