AGB  ·  Datenschutz  ·  Impressum  







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

Gruppen von Controls erzeugen - dynamisch vs. ?

Ein Thema von cltom · begonnen am 3. Dez 2021 · letzter Beitrag vom 4. Dez 2021
Antwort Antwort
Delbor

Registriert seit: 8. Okt 2006
Ort: St.Gallen/Schweiz
1.196 Beiträge
 
Delphi 11 Alexandria
 
#1

AW: Gruppen von Controls erzeugen - dynamisch vs. ?

  Alt 3. Dez 2021, 13:03
Hi zusammen

Und was ist der Unterschied zu TObjectList, ausser dass diese Objekte verschiedener Vorfahren verwalten kann (TControl, TGraphicConrtol etc)?

Wenn du schon die Controls dynamisch erzeugts, was spricht dagegen die erzeugten Instanzen einem Array zuzuweisen und über das Array auf die Werte der Controls zugreifen.
Eigentlich spricht da nichts dagegen - ausser dass Listen mit weniger Verwaltungsaufwand erweitert werden können.

Gruss
Delbor
Roger
Man muss und kann nicht alles wissen - man muss nur wissen, wo es steht.
Frei nach Albert Einstein
http://roase.ch

Geändert von Delbor ( 3. Dez 2021 um 13:11 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.757 Beiträge
 
Delphi 12 Athens
 
#2

AW: Gruppen von Controls erzeugen - dynamisch vs. ?

  Alt 3. Dez 2021, 13:46
Und was ist der Unterschied zu TObjectList, ausser dass diese Objekte verschiedener Vorfahren verwalten kann (TControl, TGraphicConrtol etc)?
Beziehst du dich damit auf meinen Vorschlag mit TControList? In dem Fall ist der Unterschied schon signifikant. Im Gegensatz tu TObjectList, was einfach eine Liste von TObject-Instanzen oder dessen Nachfahren ist, handelt es sich bei TControlList um ein visuelles Grid-ähnliches Control, in dem man ein Layout für seine Controls (TLabel, TEdit usw.) einmal entwirft und diese dann zur Laufzeit in der gewünschten Anzahl dargestellt werden und auch bedienbar sind.

https://docwiki.embarcadero.com/RADS...olList_Control
https://www.youtube.com/watch?v=PfHV9AhV2NM
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von bernau
bernau

Registriert seit: 1. Dez 2004
Ort: Köln
1.312 Beiträge
 
Delphi 12 Athens
 
#3

AW: Gruppen von Controls erzeugen - dynamisch vs. ?

  Alt 3. Dez 2021, 13:50
Hi zusammen
Und was ist der Unterschied zu TObjectList, ausser dass diese Objekte verschiedener Vorfahren verwalten kann (TControl, TGraphicConrtol etc)?
Du musst nicht casten. Ausser du verwendest eine generische Objectliste. Dann müssen aber auch alle Controls gleich sein.

Wenn du schon die Controls dynamisch erzeugts, was spricht dagegen die erzeugten Instanzen einem Array zuzuweisen und über das Array auf die Werte der Controls zugreifen.
Eigentlich spricht da nichts dagegen - ausser dass Listen mit weniger Verwaltungsaufwand erweitert werden können.
Ich finde Arrays intuitiver.... In diesem Fall.

Wenn ich ein paar Edits zweidimensional auf einem Form plaziere, kann ich über ein zweidimensionales Edit einfacher drauf zugreifen.

Beim Erzeugen der Controls kann ich die Arraygröße abfragen. Dann muss ich nur noch das Array vergrößern und du und hast die Menge der Edits angepasst.

Ist aber letztendlich Geschmackssache.
Gerd
Kölner Delphi Usergroup: http://wiki.delphitreff.de

Geändert von bernau ( 3. Dez 2021 um 13:53 Uhr)
  Mit Zitat antworten Zitat
cltom

Registriert seit: 22. Sep 2005
230 Beiträge
 
Delphi 12 Athens
 
#4

AW: Gruppen von Controls erzeugen - dynamisch vs. ?

  Alt 4. Dez 2021, 12:38
Danke Euch!

Hab das jetzt umgestellt auf die Array-Methode. Das passt hier tatsächlich ganz gut, weil auch die Daten in einem Array landen und das eine gewisse logische Parallele ergibt.

In jedem Fall macht es den Code so viel besser lesbar:

aus:
SomeClass.SomeArray.ValueTypeID[i] := (FindComponent('cmb_value_' + IntToStr(i) + '_TypeID') As TComboBox).ItemIndex;
wird:
SomeClass.SomeArray.ValueTypeID[i] := MyInputArray[i].ValueTypeID.ItemIndex;
deutlich schneller ist es außerdem.



Geändert von cltom ( 4. Dez 2021 um 13:24 Uhr)
  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 02:59 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