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 Tipps um Frames in Baumstruktur zu organisieren (https://www.delphipraxis.net/185085-tipps-um-frames-baumstruktur-zu-organisieren.html)

nuclearping 13. Mai 2015 17:26

Tipps um Frames in Baumstruktur zu organisieren
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo :)

Ich will gerne Frames in einer Baumstruktur organisieren.

Ich habe mir dazu etwas mit dem
Delphi-Quellcode:
VirtualStringTree
gebastelt und das funktioniert soweit ganz gut. Das Problem ist nur: Umso mehr Knoten dazu kommen, bzw. umso mehr Frames, umso langsamer wird die Anwendung beim Scrollen / Resizen und umso massiver wird auch das Flackern, da er scheinbar ziemlich viel Zeit mit dem Neuzeichnen der Frames verschwendet. Das kann man sicher noch optimieren.

Hier mal ein "Mockup", wie das Ganze in etwa aussehen soll:
Anhang 43175

Ich habe mir auch schon überlegt, die Inhalte der Frames mit GDI / Graphics32 "per Hand" zu gestalten und das Ganze in einen
Delphi-Quellcode:
VirtualDrawTree
zu zeichnen oder in das ExOrgChart von DevExpress.
Allerdings werden die Frames am Ende noch komplexere Inhalte haben (Bild, Buttons, ein "Barometer", usw). Und dazu müsste ich dann auch das ganze Mouse-Handling z.B. für die Buttons, Checkboxen, Trackbar, usw. nachbauen, was ziemlich viel Aufwand wäre.

Daher die Frage: Wie würdet ihr das angehen? Hat da jemand schonmal Erfahrungen gesammelt?

Mavarik 13. Mai 2015 20:57

AW: Tipps um Frames in Baumstruktur zu organisieren
 
Zitat:

Zitat von nuclearping (Beitrag 1301422)
Daher die Frage: Wie würdet ihr das angehen? Hat da jemand schonmal Erfahrungen gesammelt?

Solche visuellen Komponenten gehören nicht in einen Treeview...
In den Treeview kommt ein Titel... und wenn ich dann den Tree an der Stelle auf machen kommt in Frame da neben die entsprechenden Komponenten.

Mavarik

nuclearping 14. Mai 2015 05:45

AW: Tipps um Frames in Baumstruktur zu organisieren
 
Danke für deine Antwort und den Ansatz. :)

Warum gehören, deiner Meinung nach, solche visuellen Komponenten nicht in einen
Delphi-Quellcode:
TreeView
? Was spricht dagegen?

Ich habe mich für meine Variante hiervon inspirieren lassen: http://stackoverflow.com/questions/1...tail-grid-view

Ich kann mir aber grad nur schwer vorstellen, wie dein Vorschlag visuell ansprechend aussehen soll, wenn ich zB Elternknoten mit einem umfangreichen / langen Titel habe? Dann hat der
Delphi-Quellcode:
TreeView
ja entweder eine horizontale Scrollbar oder eine entsprechend große Breite und andere Elternknoten, mit einem kurzen Titel, hängen dann "leer" im Raum? Das wäre ein "No-Go". Das muss optisch schon ordentlich und nahtlos aussehen.

Eine andere Möglichkeit, über die ich nachgedacht habe und die möglich wäre, ist das Ganze einer
Delphi-Quellcode:
TScrollBox
mit entsprechendem "Look & Feel" nachzubauen. Wäre aber auch mit ziemlichem Aufwand verbunden, damit das einwandfrei aussieht und funktioniert.

Dejan Vu 14. Mai 2015 06:00

AW: Tipps um Frames in Baumstruktur zu organisieren
 
Ich finde das auch eher ungewöhnlich. Was willst Du damit erreichen? Der Ansatz von Mavarik ist klassisch und sehr einfach umzusetzen. Wenn du allerdings ein 'Schieberegler-Dashboard' (also benutzerkonfiguriert mehrere Panel nebeneinander) haben willst, dann würde ich das über ein float panel (oder wie die heißen) lösen.

nuclearping 14. Mai 2015 15:17

AW: Tipps um Frames in Baumstruktur zu organisieren
 
Zitat:

Zitat von Dejan Vu (Beitrag 1301468)
Was willst Du damit erreichen?

Die Frames sollen Messergebnisse beinhalten, mit diversen Steuerungsfunktionen.

Diese Messungen müssen in Kategorien gruppiert werden und bei Bedarf ein- und ausblendbar sein.

stahli 14. Mai 2015 16:14

AW: Tipps um Frames in Baumstruktur zu organisieren
 
Wie wäre es, in Richtung CategoryPanel zu denken?

nuclearping 14. Mai 2015 21:10

AW: Tipps um Frames in Baumstruktur zu organisieren
 
Zitat:

Zitat von stahli (Beitrag 1301534)
Wie wäre es, in Richtung CategoryPanel zu denken?

Oh, in der Tat. Das ist echt eine gute Idee. Habs auch grad mal getestet, funktioniert einwandfrei. :thumb:


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