Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Etwas Hilfe bei erweiterung von TObjectList (https://www.delphipraxis.net/146024-etwas-hilfe-bei-erweiterung-von-tobjectlist.html)

ryLIX 12. Jan 2010 13:18


Etwas Hilfe bei erweiterung von TObjectList
 
Hi DP,
ich versuche gerade die TObjectList um eine Suche zu erweitern.
Nur stehe ich grade auf dem Schlauch...

Wie kann ich auf den Inhalt der Liste aus der Klasse herraus zugreifen?
Ich kenne eine Beispiel Funktion in Vb.Net aber ich bin mir nicht sicher wie ich das in Delphi umsetzen soll.
Adressen ist in diesem Fall äquivalent zur TObjectList und locAdresse ist die Klasse.

Code:
Public Function Suchen(ByVal Text As String) As Adressen
'In dieser Adressen-Auflistung wird das Suchergebnis gesammelt.
Dim locAdressen As New Adressen()
For Each locAdresse As Adresse In Me
If locAdresse.Name Like Text Then
locAdressen.Add(locAdresse)
'Direkt zum 'Next' springen.
Continue For
ElseIf locAdresse.Vorname Like Text Then
locAdressen.Add(locAdresse)
Continue For
ElseIf locAdresse.Straße Like Text Then
locAdressen.Add(locAdresse)
Continue For
ElseIf locAdresse.Ort Like Text Then
locAdressen.Add(locAdresse)
Continue For
ElseIf locAdresse.PLZ.ToString Like Text Then
locAdressen.Add(locAdresse)
End If
Next
Return locAdressen
End Function

hoika 12. Jan 2010 14:25

Re: Etwas Hilfe bei erweiterung von TObjectList
 
Hallo,

Turbo Delphi kennt noch kein ForEach,
also nimmst du eine normale for-Schleife.


Heiko

webcss 12. Jan 2010 14:30

Re: Etwas Hilfe bei erweiterung von TObjectList
 
Schau mal hier Iterator pattern explained

ryLIX 12. Jan 2010 14:47

Re: Etwas Hilfe bei erweiterung von TObjectList
 
Hab ihr beiden den Beitrag oben gelesen?
Mir ist schon bekannt das Delphi kein For Each kennt und cih weiß auch wie ich Enums erstelle und verwende.

Mir geht es um den Zugriff auf die Daten die meine Klasse enthält aber halt aus der Klasse selbst.
Bei Vb geht das mit Me.
Ich suche nun eine Möglichkeit ohne die Klasse bzw Daten beim aufruf der Funktion selber darauf zuzugreifen.

webcss 12. Jan 2010 15:18

Re: Etwas Hilfe bei erweiterung von TObjectList
 
Ach so, dann sag das doch auch so:
Delphi-Quellcode:
 
for i:= 0 to self.count-1 do begin
  locAdresse:= TAdresse(self.Items[i]);
  ...
  Deine Vergleiche...
  ...
end;
wobei Du das self auch weglassen kannst...

ryLIX 12. Jan 2010 15:56

Re: Etwas Hilfe bei erweiterung von TObjectList
 
Zitat:

Zitat von webcss
Ach so, dann sag das doch auch so

Zitat:

Zitat von ryLIX
Wie kann ich auf den Inhalt der Liste aus der Klasse herraus zugreifen?



:wiejetzt:

Danke für deine Hilfe :thumb:

Blup 13. Jan 2010 13:49

Re: Etwas Hilfe bei erweiterung von TObjectList
 
Du hättest vieleicht so formulieren konnt:

Wie kann ich auf den Inhalt der Listenelemente aus der Listenklasse herraus zugreifen?


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:21 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