AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Pro/contra FindComponent

Ein Thema von glkgereon · begonnen am 2. Nov 2004 · letzter Beitrag vom 2. Nov 2004
Antwort Antwort
Benutzerbild von glkgereon
glkgereon

Registriert seit: 16. Mär 2004
2.287 Beiträge
 
#1

Pro/contra FindComponent

  Alt 2. Nov 2004, 15:41
ich hab jetzt schonma ein paar negative kommentare zum befehl findcomponent gesehen/gehört/gelesen

was ist an dem befehl schlecht/nicht optimal?

was kann man sonst benutzen?
»Unlösbare Probleme sind in der Regel schwierig...«
  Mit Zitat antworten Zitat
Benutzerbild von mirage228
mirage228

Registriert seit: 23. Mär 2003
Ort: Münster
3.750 Beiträge
 
Delphi 2010 Professional
 
#2

Re: Pro/contra FindComponent

  Alt 2. Nov 2004, 15:44
Hi,

falls man FindComponent in längeren Schleifen verwendet ist da z.B. ineffektiv, da die Komponente immer wieder neu gesucht wird. Da wäre es einfacher vor der Schleife einmalig FindComponent auszuführen und das Ergebnis einer Variable zuzuweisen. Falls man mehrere Komponenten hat, kann man auch einmalig ein Array anlegen.
Dynamische Komponenten kann man in diesem Fall auch als Feld in den private/public Bereich der Form unterbringen, sodass man immer drauf zugreifen kann. Oder fall es mehrere sind, in einem Array.

mfG
mirage228
David F.

May the source be with you, stranger.
PHP Inspection Unit (Delphi-Unit zum Analysieren von PHP Code)
  Mit Zitat antworten Zitat
Dax
(Gast)

n/a Beiträge
 
#3

Re: Pro/contra FindComponent

  Alt 2. Nov 2004, 15:46
An FindComponent ist nichts direkt schlecht, nur es ist eben Teil der VCL, und nicht alle Programmierer wollen die VCL nutzen. Dann gibt es da noch das Problem mit der Geschwindigkeit.. wenn du viele Komponenten auf deinem Formular hast, kann FindComponent schon mal ziemlich Zeit brauchen.
  Mit Zitat antworten Zitat
Robert_G
(Gast)

n/a Beiträge
 
#4

Re: Pro/contra FindComponent

  Alt 2. Nov 2004, 16:13
Zitat von glkgereon:
was ist an dem befehl schlecht/nicht optimal?
Es vergleicht den Name der Komponenten -> Stringvergleiche gehören mit zu den langsamsten Operationen (jedenfalls unter Win32 ) überhaupt.
Zitat von glkgereon:
was kann man sonst benutzen?
Du kannst die 2 Arrays Controls bzw. Components eines ContainerControls verwenden.
Delphi-Quellcode:
for i := 0 to pred(ControlCount) do
  if Controls[i] is SomeControlClass then
    DoSomething();
  Mit Zitat antworten Zitat
Antwort Antwort


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 03:18 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