Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Suche nach Komponente ähnlich wie TToolBar (https://www.delphipraxis.net/199680-suche-nach-komponente-aehnlich-wie-ttoolbar.html)

completestranger 11. Feb 2019 19:09

Suche nach Komponente ähnlich wie TToolBar
 
Hi,

ich bin auf der Suche nach einer Komponente ähnlich wie TToolBar. Folgende Voraussetzungen müssen erfüllt sein:
  • Irgendeine Art Bündelung der Buttons - aber keine Collections, da die Vererbungsmechanik in Delphi diese nicht unterstützt
    The visual form inheritance mechanism does not work for complex components that use published properties holding nested collections.
    Peter Below (TeamB) 2010
  • Einfärbung der Buttons - Background und Font
  • Propertysupport von Enable und Visible der einzelnen Buttons
  • Automatiklogik für Visible, sodass "keine Lücken (in der Anzeige) in der Liste" entstehen
  • 32 bit PNG mit Alphakanal Support
  • Imagelist Support mit ImageIndex
  • TAction Support
  • Bestimmung von Breite und Höhe der Buttons
  • "Pressed" Support, soll heißen man soll sehen welcher Button noch geklickt ist
  • Vertikale Anordnung

Warum funktioniert TToolBar nicht?
  • Sobald ShowCaptions aktiviert ist, wird anscheinend automatisch die Width der Buttons gesetzt
  • Man sieht "Pressed" nicht - vllt bin ich auch nur unfähig?

Warum funktioniert TCategoryButtons nicht?
  • Kein Propertysupport von Enable und Visible
  • Keine Vererbung, da so eine ****** Collection benutzt wird

Kann hier jemand weiterhelfen?

hoika 11. Feb 2019 22:04

AW: Suche nach Komponente ähnlich wie TToolBar
 
Hallo,
Delphi-Quellcode:
Warum funktioniert TToolBar nicht?
Bau mal bitte ein Minimal-Bsp. zusammen, was deine 2 Problem (Width, Pressed) zeigt.

completestranger 12. Feb 2019 08:39

AW: Suche nach Komponente ähnlich wie TToolBar
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hier mal ein Beispiel wie es ungefähr aussehen soll.

Folgende Dinge wären noch zu "korrigieren":
  1. ToolButton Caption links anordnen
  2. Buttonbreite soll gesetzt werden können
  3. Das abwählen der ToolButtons soll automatisch erfolgen, wenn man auf einen anderen Button oder Tabsheet klickt

Andreas L. 12. Feb 2019 10:09

AW: Suche nach Komponente ähnlich wie TToolBar
 
Liste der Anhänge anzeigen (Anzahl: 2)
Bei mir (Delphi 2009 Pro) wird die Größe der Buttons nicht verändert wenn ich ShowCaptions aktiviere. Außerdem kannst du die AutoSize-Property von TToolButton verwenden. Images mit 32Bit Alpha geht auch problemlos.

Dein Beispiel-Projekt kann ich leider nicht anschauen weil es die Komponente TSplitView im Delphi 2009 noch nicht gibt.

Gruppen kannst du z. B. mit Panels oder GroupBoxen machen. Einfach ein Panel (Align Top) erstellen. Für jede Gruppe ein weiteres Panel (Align Left) erstellen. In das Panel setzt du dann eine Toolbar mit den Buttons. So kannst du Toolbars/Buttons gruppieren. Du kannst die Gruppen auch optisch trennen. z. B. mit den Panel-Bevels-Properties oder einer anderen Panel-Komponente die Border-Styles unterstützt.

Vielleicht wäre das was für dich?

Beispiel:
Anhang 50678

Im Anhang ist die EXE inkl. Code.

Uwe Raabe 12. Feb 2019 12:05

AW: Suche nach Komponente ähnlich wie TToolBar
 
Zitat:

Zitat von completestranger (Beitrag 1425309)
Das abwählen der ToolButtons soll automatisch erfolgen, wenn man auf einen anderen Button oder Tabsheet klickt

Das lässt sich ganz einfach realisieren, wenn man im jeweiligen OnUpdate der Actions das Checked der Action anhand der aktuellen TabPage setzt (Beispiel für ABear):
Delphi-Quellcode:
procedure TMainF.ABearExecute(Sender: TObject);
begin
  PCContent.ActivePage := TSBear;
end;

procedure TMainF.ABearUpdate(Sender: TObject);
begin
  ABear.Checked := PCContent.ActivePage = TSBear;
end;
Nebenbei ist dann auch nur immer der richtige Button als Down markiert.

completestranger 12. Feb 2019 13:43

AW: Suche nach Komponente ähnlich wie TToolBar
 
Zitat:

Zitat von Andreas L. (Beitrag 1425315)
Bei mir (Delphi 2009 Pro) wird die Größe der Buttons nicht verändert wenn ich ShowCaptions aktiviere. Außerdem kannst du die AutoSize-Property von TToolButton verwenden. Images mit 32Bit Alpha geht auch problemlos.

Dann wurde mein Problem nicht verstanden. Bitte mach z. B. den Button "Startseite" 350 Pixel breit.

Und bitte die ToolButtons untereinander, also vertikal. Der Text rechts neben den Icons, nicht den Text unter den Icons.

completestranger 12. Feb 2019 13:44

AW: Suche nach Komponente ähnlich wie TToolBar
 
Zitat:

Zitat von Uwe Raabe (Beitrag 1425327)
Das lässt sich ganz einfach realisieren, wenn man im jeweiligen OnUpdate der Actions das Checked der Action anhand der aktuellen TabPage setzt (Beispiel für ABear)

Danke, funktioniert.


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:51 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