Forum: Algorithmen, Datenstrukturen und Klassendesign
by himitsu,
27. Apr 2021
dem stimme ich aber nicht ganz zu.
selbst wenn der Name nicht verwendet wird, so ist er beim Debuggen oft sehr hilfreich, z.B. kann man so an der Instanz in einem Eventhandler den Namen auslesen, was leichter zu verstehen ist, als irgendein ObjektZeiger.
aber ja, beim automatischen Erstellen muß man natürlich aufpassen, dass es keine Namenskonflikte gibt,
aber hier kann man z.B. den Namen...
Forum: Algorithmen, Datenstrukturen und Klassendesign
by himitsu,
26. Apr 2021
In dem Panel kannst dann auch mit Panel.FindComponent suchen.
oder for P in Panel do (TComponent hat einen Standard-Enumerator für .Components),
bzw. selbst über die .Components iterieren.
.Controls sind die Parent-Beziehungen
und .Components die Owner-Beziehungen.
Forum: Algorithmen, Datenstrukturen und Klassendesign
by himitsu,
26. Apr 2021
Der Vorteil an Tag oder Dictionary ist, dass man im OnClick/OnMouseMove/sonstwo nicht erst in der Liste/Array suchen muß, da die Komponente (Sender) es einem direkt sagt oder man mit nur einem Zugriff das Dictionary fragen kann.
Wenn die Edits einen passenden Owner im Create mitbekommen, wie z.B. die Form oder ein Panel,
dann werden sie bei Freigabe der Form auch mit automatisch...
Forum: Algorithmen, Datenstrukturen und Klassendesign
by himitsu,
24. Apr 2021
nicht namen vergleichen ... maximal Konstante, aber niemals "irgendwelche" losen strings!!!!!!
niemals mit = ... wenn, dann SameText oder so
und besser immer Variable mit Instanz vergleichen! (z.B. array oder liste mit sprechenden kostanten)