AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Performance Problem - viele VCL Komponenten!

Performance Problem - viele VCL Komponenten!

Ein Thema von weisswe · begonnen am 22. Aug 2011 · letzter Beitrag vom 23. Aug 2011
Antwort Antwort
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.277 Beiträge
 
Delphi 10.4 Sydney
 
#1

AW: Performance Problem - viele VCL Komponenten!

  Alt 23. Aug 2011, 05:07
Hallo,

ich würde es erst einmal mit normalen TButtons versuchen.
Und ist es immer noch zu langsam, ein Panel und selbermalen.
Viell. geht ja auch ein TDrawGrid, kommt auf die Sitzpositionen an.


Heiko
Heiko
  Mit Zitat antworten Zitat
FredlFesl

Registriert seit: 19. Apr 2011
293 Beiträge
 
Delphi 2009 Enterprise
 
#2

AW: Performance Problem - viele VCL Komponenten!

  Alt 23. Aug 2011, 06:29
Liegts vielleicht an der lahmen Grafikkarte?
1,5s ist doch schon sehr happig. Ich bezweifle, das ein TDrawGrid hier großartig Abhilfe schaffen würde.
Das Bild hängt schief.
  Mit Zitat antworten Zitat
Neumann

Registriert seit: 6. Feb 2006
Ort: Moers
542 Beiträge
 
Delphi 12 Athens
 
#3

AW: Performance Problem - viele VCL Komponenten!

  Alt 23. Aug 2011, 06:32
Habe die gleiche Erfahrung mit den TMS-Buttons gemacht. Habe Panels mit bis zu 200 Buttons für Touchoberfläche und muss mit Anwendern mit sehr schwacher Hardware rechnen.
Bei einer größeren Zahl TMSSmoothButtons auf einem Panel bzw. auf einer Seite eines Pagecontrols bauen sie sich sehr langsam auf, wenn die Seite sichtbar gemacht wird uns sind deshalb leider für mich nicht brauchbar.

Verwende jetzt andere (TcyADVSpeedButtons) die von der Optik ebenfalls sehr gut und flexibel sind, aber wesentlich schneller gezeichnet werden.

Ein weiteres Problem ist wohl auch die dynamische Erstellung. Anscheinend braucht create viel Zeit. Es scheint besser zu sein, beim Programmstart einen Vorrat (z.B. Array 1..100 of txbtn) anzulegen und dies dann später sichtbar/unsichtbar schalten, zu beschriften oder zu verschieben usw.
Ralf
Gruß vom Niederrhein
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.960 Beiträge
 
Delphi 12 Athens
 
#4

AW: Performance Problem - viele VCL Komponenten!

  Alt 23. Aug 2011, 07:48
Ein weiteres Problem ist wohl auch die dynamische Erstellung. Anscheinend braucht create viel Zeit.
Naja, es werden halt alle (?) anderen Komponenten per Notify informiert, je mehr das sind, desto länger dauert es.
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#5

AW: Performance Problem - viele VCL Komponenten!

  Alt 23. Aug 2011, 07:53
Ein weiteres Problem ist wohl auch die dynamische Erstellung. Anscheinend braucht create viel Zeit.
Naja, es werden halt alle (?) anderen Komponenten per Notify informiert, je mehr das sind, desto länger dauert es.
So isses und darum sollte man bei so einer grossen Anzahl das in einer eigenen Komponente selber zeichnen oder als Image auf den Bildschirm klatschen. (@jaenicke hattest du ja auch schon vorgeschlagen)

Auch die Erstellung von mehreren stinknormalen Buttons (Button) dauert seine Zeit und man kann beim Aufbau zuschauen.
Ist jetzt noch ein langsamer Rechner/GraKa im Spiel, dann wird das nicht witzig.

Wenn das für einen Kinosaal sein soll, dann sprechen wir ja mal locker von 100-800 Buttons
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.875 Beiträge
 
Delphi 11 Alexandria
 
#6

AW: Performance Problem - viele VCL Komponenten!

  Alt 23. Aug 2011, 08:01
dafür würde ich eh keine Buttons nehmen
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.659 Beiträge
 
Delphi 12 Athens
 
#7

AW: Performance Problem - viele VCL Komponenten!

  Alt 23. Aug 2011, 09:10
Wenn es gar nicht anders geht und es unbedingt Einzelkomponenten sein müssen, dann kann es schon etwas bringen, diese nach Möglichkeit von TGraphicControl abzuleiten. Man muss dann halt auf ein Handle verzichten.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Neumann

Registriert seit: 6. Feb 2006
Ort: Moers
542 Beiträge
 
Delphi 12 Athens
 
#8

AW: Performance Problem - viele VCL Komponenten!

  Alt 23. Aug 2011, 09:42
Ich hätte da etwas, ist von mir von der freien Komponente tSimplegraph abgeleitet. Damit kann man einfach zur Laufzeit Pläne mit Komponenten erstellen, die auf Anklicken reagieren. Identifizieren kann man die Objekte in dem Control einfach über den Tag-Wert, den man auch zur Laufzeit setzen kann. Die Pläne lassen sich speichern und laden und das ist absolut schnell.

Die Objekte können in Form, Farbe Hintergrundbilder usw. frei gestaltet werden.
Ralf
Gruß vom Niederrhein
  Mit Zitat antworten Zitat
Antwort Antwort

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 07:23 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz