AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Extrem langsames Aktualisieren großer Anzahl von TLabels?

Extrem langsames Aktualisieren großer Anzahl von TLabels?

Ein Thema von christian.noeding · begonnen am 29. Sep 2006 · letzter Beitrag vom 30. Sep 2006
Antwort Antwort
Seite 2 von 2     12
Hawkeye219

Registriert seit: 18. Feb 2006
Ort: Stolberg
2.227 Beiträge
 
Delphi 2010 Professional
 
#11

Re: Extrem langsames Aktualisieren großer Anzahl von TLabels

  Alt 29. Sep 2006, 23:27
Noch was:
Zitat von christian.noeding:
Das Setzen von DoubleBuffer der Forms hat nicht wirklich was gebracht...
In deinem Fall muß DoubleBuffered bei der ScrollBox (als Parent der Labels) gesetzt werden, nicht bei den Formularen!

Gruß Hawkeye
  Mit Zitat antworten Zitat
Benutzerbild von nailor
nailor

Registriert seit: 12. Dez 2002
Ort: Karlsruhe
1.989 Beiträge
 
#12

Re: Extrem langsames Aktualisieren großer Anzahl von TLabels

  Alt 29. Sep 2006, 23:46
Zitat von Hawkeye219:
Noch was:
Zitat von christian.noeding:
Das Setzen von DoubleBuffer der Forms hat nicht wirklich was gebracht...
In deinem Fall muß DoubleBuffered bei der ScrollBox (als Parent der Labels) gesetzt werden, nicht bei den Formularen!

Gruß Hawkeye
am intelligentesten einfach bei Label.Parent setzen, dann stellt sich auch garnicht die Frage, ob das jetzt nun die ScrollBox, die Form, oder sonstwas ist...
Michael N.
http://nailor.devzero.de/code/sharpmath/testing/ --- Tests, Feedback, Anregungen, ... aller Art sehr willkommen!
::: don't try so hard - it'll happen for a reason :::
  Mit Zitat antworten Zitat
Benutzerbild von christian.noeding
christian.noeding

Registriert seit: 26. Mai 2005
Ort: Knw.-Remsfeld
119 Beiträge
 
Delphi XE2 Professional
 
#13

Re: Extrem langsames Aktualisieren großer Anzahl von TLabels

  Alt 29. Sep 2006, 23:59
Tatsache, jetzt läufts... hatte das Doublebuffer nur probiert, als ich die LockWindow-Prozedur noch nicht angewandt hatte (und die WindowUnlock natürlich ohne DoubleBuffer)...

Wenn man beides auf die Scrollbox anwendet, dann rennt die GUI


Vielen Dank für Eure Hilfe!


Ich geh jetzt erstmal !

Gute Nacht
Christian Nöding
  Mit Zitat antworten Zitat
Benutzerbild von semo
semo

Registriert seit: 24. Apr 2004
755 Beiträge
 
Delphi 2010 Professional
 
#14

Re: Extrem langsames Aktualisieren großer Anzahl von TLabels

  Alt 30. Sep 2006, 00:53
ich würde anstatt 200 labels zu verwenden diese texte direkt auf das Form oder ein anderes control malen (muss man nur halt positionieren in einer schleife.

du könntest ja auch ein memo nehmen, diese ohen rahmen darstellen und als hintergrundfarbe die farbe des forms übernehmen.
  Mit Zitat antworten Zitat
Benutzerbild von christian.noeding
christian.noeding

Registriert seit: 26. Mai 2005
Ort: Knw.-Remsfeld
119 Beiträge
 
Delphi XE2 Professional
 
#15

Re: Extrem langsames Aktualisieren großer Anzahl von TLabels

  Alt 30. Sep 2006, 03:15
Zitat:
ich würde anstatt 200 labels zu verwenden diese texte direkt auf das Form oder ein anderes control malen
Das hätte ich ja gern gemacht, aber ich möchte mit einem Klick auf einzelne Werte ein "OnMouseDown"-Ereignis aufrufen und somit hat sich das leider erledigt...

Mittlerweile habe ich aber ein neues Problem: wenn ich neben den Labels noch Checkboxes oder Scrollbars habe, dann funktioniert das mit dem DoubleBuffer nicht mehr. Die Forms werden partout nicht mehr aktualisiert. Erst wenn ich den DoubleBuffer-Eintrag entferne, kann ich die Komponenten wieder ansprechen... was das nu wieder ist?

Egal, so ein kleines flimmern könnte ich verkraften *g*


Nur erschreckend, wie schnell das GUI in die Knie geht (habe jetzt neben den 200 Wertanzeigen noch knapp 200 Scrollbars dynamisch erzeugt) und nun aktualisiert das alles noch einen Tick langsamer :-/


Gute Nacht
Christian Nöding
  Mit Zitat antworten Zitat
Benutzerbild von semo
semo

Registriert seit: 24. Apr 2004
755 Beiträge
 
Delphi 2010 Professional
 
#16

Re: Extrem langsames Aktualisieren großer Anzahl von TLabels

  Alt 30. Sep 2006, 03:57
das mit dem mousedown ist doch auch kein problem,
im formmousedown event guckst du einfach wo der anwender hingeklickt hat und anhand der positionen der text weist du doch welcher text "angeklickt" wurde.

mit ptinrect etc. kann man sowas schnell prüfen....
  Mit Zitat antworten Zitat
Benutzerbild von christian.noeding
christian.noeding

Registriert seit: 26. Mai 2005
Ort: Knw.-Remsfeld
119 Beiträge
 
Delphi XE2 Professional
 
#17

Re: Extrem langsames Aktualisieren großer Anzahl von TLabels

  Alt 30. Sep 2006, 11:25
OK, aber wie umgehe ich das Problem mit den Scrollbars? Die Übersicht kann ich mit nem Memofeld oder ähnlichen machen, das sehe ich ein, aber dieses Faderpanel? Hier ist die Aktualisierung noch drastisch langsamer und DoubleBuffered:=True zieht komischerweise nicht!? Gibts dafür vielleicht noch ne Idee? *g*
Christian Nöding
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 20:10 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