AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Erstellen von Objektlisten während des Programmablaufs
Thema durchsuchen
Ansicht
Themen-Optionen

Erstellen von Objektlisten während des Programmablaufs

Ein Thema von Optiplex · begonnen am 3. Aug 2009 · letzter Beitrag vom 5. Aug 2009
Antwort Antwort
Seite 1 von 2  1 2      
Optiplex

Registriert seit: 5. Mär 2008
131 Beiträge
 
Delphi 2005 Personal
 
#1

Erstellen von Objektlisten während des Programmablaufs

  Alt 3. Aug 2009, 14:13
Hallo DP'ler,

ich habe eine typisierte Objektliste. Beim Programmstart weis ich noch nicht wie viele während des Programmablauf von diesen Listen erstellt werden müssen (Usereingabe). Normalerweise werden Objektlisten in variablen hinterlegt und in FormCreate erstellt. Wie mache ich das wenn die Anzahl nicht bekannt ist. (Ich hoffe dass ich mich einigermaßen verständlich ausgedrückt habe.)

Danke und Gruß Dieter
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Erstellen von Objektlisten während des Programmablaufs

  Alt 3. Aug 2009, 14:15
Verwalte die Objektlisten doch auch in einer Objektliste.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Ralf Kaiser
Ralf Kaiser

Registriert seit: 21. Mär 2005
Ort: Wuppertal
932 Beiträge
 
Delphi 10.3 Rio
 
#3

Re: Erstellen von Objektlisten während des Programmablaufs

  Alt 3. Aug 2009, 15:27
...oder erstelle die Objektlisten erst wenn der Benutzer die Anzahl eingegeben hat. Dann ist die Anzahl ja wieder bekannt.

Gibt es zwingende Gründe, warum sie unbedingt in FormCreate erstellt werden müssen?
Ralf Kaiser
  Mit Zitat antworten Zitat
tabl

Registriert seit: 27. Apr 2009
Ort: 31582
19 Beiträge
 
Delphi 7 Personal
 
#4

Re: Erstellen von Objektlisten während des Programmablaufs

  Alt 3. Aug 2009, 20:46
versuch mal mit nen dynamischen array vom entsprechenden typ der jedesmal wenn ein neues objekt hinzugefügt wird die länge um 1 erhöht. funcs bei mir eig immer recht gut. zumi bei labelsund änlichen. wie das bei objektlisten aussieht ka, sollte aba auch funcsen
  Mit Zitat antworten Zitat
Optiplex

Registriert seit: 5. Mär 2008
131 Beiträge
 
Delphi 2005 Personal
 
#5

Re: Erstellen von Objektlisten während des Programmablaufs

  Alt 4. Aug 2009, 06:27
erstmal Danke für die Antworten.

@Lucki
Funktioniert denn das ? Wie spreche ich denn die einzelnen objekte über diese Listen an den ich habe ja dann eine Liste für die Listen und wie kann ich die einzelnen Objektlisten auseinanderhalten. Welche Liste soll man dafür verwenden TList oder TObjektlist. Meine Listen sind alle von Typ TObjectlist.

Hast du eventuell ein Beispiel für mich.

@ Alfi001
Da liegt das Problem, der User weis die Anzahl die er benötigt auch nicht. Nein die Listen müssen nicht unbedingt in der FormCreate erstellt werden.

@tabl
Dynamischer Array ? Für das verwalten der einzelnen Objekte benutze ich ja diese Objektlisten, ob man diese in einem Dynamischer Array wiederum verwalten kann? Hab ich noch nie Probiert.

Hast du eventuell ein kurzes Beispiel zur Hand?

Gruß Dieter
  Mit Zitat antworten Zitat
Blup

Registriert seit: 7. Aug 2008
Ort: Brandenburg
1.429 Beiträge
 
Delphi 10.4 Sydney
 
#6

Re: Erstellen von Objektlisten während des Programmablaufs

  Alt 4. Aug 2009, 07:15
Beispiel:
Delphi-Quellcode:
FMeineListen := TObjectList.Create;

for i := 0 to Anzahl - 1 do
  FMeineListen.Add(TObjectList.Create);


function GetObjectList(AIndex: Integer): TObjectList;
begin
  Result := FMeineListen[AIndex] as TObjectList;
end;

GetObjectList(5).Add(TMeinObject.Create);

MeinObject := GetObjectList(5)[1] as TMeinObject;
  Mit Zitat antworten Zitat
Benutzerbild von Ralf Kaiser
Ralf Kaiser

Registriert seit: 21. Mär 2005
Ort: Wuppertal
932 Beiträge
 
Delphi 10.3 Rio
 
#7

Re: Erstellen von Objektlisten während des Programmablaufs

  Alt 4. Aug 2009, 07:55
Zitat von Optiplex:
@ Alfi001
Da liegt das Problem, der User weis die Anzahl die er benötigt auch nicht. Nein die Listen müssen nicht unbedingt in der FormCreate erstellt werden.
Seltsam. Du hattest geschrieben "(Usereingabe)". Wie kann so eine Eingabe erfolgen wenn der Benutzer die Anzahl die er eingeben soll selbst nicht kennt?

Was ich meinte: An irgeneiner Stelle wird das Programm doch wissen "ich brauche jetzt 3 Listen". Erstell einfach an der Stelle, an der die Anzahl feststeht die Listen. (EGAL wie die Anzahl festgelegt wurde, durch Eingabe oder Berechnung oder sonstwie)
Ralf Kaiser
  Mit Zitat antworten Zitat
Optiplex

Registriert seit: 5. Mär 2008
131 Beiträge
 
Delphi 2005 Personal
 
#8

Re: Erstellen von Objektlisten während des Programmablaufs

  Alt 4. Aug 2009, 08:14
Danke Blup für dein Beispiel, wenn das so funkt wär das eine Lösung.

Ich habe gerade was gelesen, dass es eine TClasslist gibt, kennt sich jenmand damit aus. Hat diese Liste Vorteile gegeüber einer Objektliste bei der Verwaltung von Objektlisten.

@Alfi001
Der User kann sich jederzeit entscheiden noch eine Objektliste anzufangen, deshalb ist es nicht möglich dies abzufragen, zu berechnen oder sonstwie zu erfahren.

Gruß Dieter
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#9

Re: Erstellen von Objektlisten während des Programmablaufs

  Alt 4. Aug 2009, 08:32
Du sprichst die ObjektListen wie in einem Array an. Da die Objekte in der Liste ja auch Objektlisten sind hast du praktisch ein zweidimensionales Array. Arrays würde ich nicht nehmen, da du dich da immer um den Speicher beim Freigeben kümmern musst. Eventuell hilft dir auch mein Tutorial über Containerklassen, denn das ist genau das, was du machen willst: http://www.michael-puff.de/Artikel/C...rKlassen.shtml
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Ralf Kaiser
Ralf Kaiser

Registriert seit: 21. Mär 2005
Ort: Wuppertal
932 Beiträge
 
Delphi 10.3 Rio
 
#10

Re: Erstellen von Objektlisten während des Programmablaufs

  Alt 4. Aug 2009, 08:50
Zitat von Optiplex:
@Alfi001
Der User kann sich jederzeit entscheiden noch eine Objektliste anzufangen, deshalb ist es nicht möglich dies abzufragen, zu berechnen oder sonstwie zu erfahren.
Dann erzeuge diese Objektliste genau dann wenn der Benutzer sich dafür entscheidet oder wenn es aus einem anderen Grund nötig werden sollte und speichere diese dann in einer anderen Objektliste oder einem Array (wie das geht oder was die Vor/Nachteile von Arrays oder Speicherung in einer Liste sind wurde ja hier im Thread bereits besprochen)
Ralf Kaiser
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 19:29 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