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 GUI-Aufbau meiner App unter Win7 extrem träge (https://www.delphipraxis.net/156775-gui-aufbau-meiner-app-unter-win7-extrem-traege.html)

tastenmann67 14. Dez 2010 18:17

GUI-Aufbau meiner App unter Win7 extrem träge
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo zusammen,

es handelt sich hierbei um eine Applikation die unter RAD 2010 entwickelt wurde. Hier wird reger Gebrauch von Frames und Labels mit z.T. reichlich Text gemacht. Um zu verdeutlichen, wie die App. aussieht habe ich einen Screenshot angehängt. Die roten Rahmen stellen jeweils einen Frame dar, welcher eben den Text und andere Info's enthält. Die Frames befinden sich untereinander auf einem Panel. Das Wörtchen "*** Mikroskopie ***" wird durch ein nicht-transparentes Label dargestellt, der Text dahinter und darunter durch ein weiteres Label mit WordWrap = True. Man kann seitenweise blättern wenn nicht alle verfügbaren Frames auf das Form passen.

Unter Win XP läuft der Aufbau der GUI / das Anzeigen der Daten extrem "fluffig" - diverse Protokolle (u.a. AQTime) ergeben, dass insbesondere die Darstellung der Labels quasi Null Zeit verschlingt.

Auf einem 2. Rechner (gleiche Ausstattung) unter Win7 läuft die Darstellung extrem zähflüssig ab, man kann beinahe zuschauen, wie die Labels Zeile für Zeile "gemalt" werden, die Messungen sprechen hier von ca. 50 - 80 ms, je nach Textmenge.

Ich habe sämtliche "Tricks" mit DoubleBuffered, FullRepaint, Themed, XP-Manifest etc. probiert, habe 2 Tage getraced und "profiled" um evtl. Flaschenhälse und redundante Aufrufe aufzuspüren. Konnte hier Einiges finden und optimieren, letztlich gebracht hat es kaum was.

Warum ist die Darstellung unter Win7 so grottig lahm und die gleiche Exe unter WinXP rattenschnell? (Eine weitere Win7-Maschnine hat das gleiche Ergebnis gebracht). Alle Maschinen haben Windows-Standard-Oberflächen ohne Firlefanz etc., ich bin reichlich ernüchtert ;-)

Ach ja, die gleiche App unter Delphi 2006 compiliert verhält sich exakt gleich schlecht.

Hat Jemand ähnliche Erfahrungen?

Viele Dank,
Pierre

stahli 16. Dez 2010 11:27

AW: GUI-Aufbau meiner App unter Win7 extrem träge
 
Mal so in´s blaue: "ParentBackground" ausschalten?

PS: Sonst ist es wenigstens mal ein *push* für Dich :wink:
Und noch herzlich Willkommen!

tastenmann67 16. Dez 2010 13:17

AW: GUI-Aufbau meiner App unter Win7 extrem träge
 
Hi Stahli,

danke für's Willkommen und für den *Push* ;-)) und natürlich für den Tipp. Daran hatte ich allerdings auch schon gedacht, bringt aber Nichts. Habe in meiner Not inzwischen die Labels durch Memos ersetzt, die werden im konkreten Fall um den Faktor 3 schneller gezeichnet (??). Dennoch ist es unterm Strich wesentlich träger als unter WinXP... Ich habe die Frames in Verdacht.

Die Erstellungsfolge ausgehend vom Hauptform sieht so aus:

Code:
Form <- ScrollBox <- Panel <- CaseFrame <- Panel <- BefTextFrame <- Memo (ex Label)
                            + CaseFrame <- Panel <- BefTextFrame <- Memo (ex Label)
                            + CaseFrame <- Panel <- BefTextFrame <- Memo (ex Label)
                            + CaseFrame <- Panel <- BefTextFrame <- Memo (ex Label)
                               ...
die CaseFrames liegen also untereinander auf dem Panel in der Scrollbox, mal mehr, mal weniger.


Gruß,
Pierre


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