Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Welches Objekt wäre das richtige? (https://www.delphipraxis.net/28512-welches-objekt-waere-das-richtige.html)

Whistler 25. Aug 2004 17:09


Welches Objekt wäre das richtige?
 
Guten Abend,

eine Prozedur ließt aus einer Datei eine Information aus.
Nun möchte ich gucken, ob ich diese Info bereits in meiner "Liste" habe.

Kurz zur Liste:
Die Liste ist statisch. D.h. es kommen garantiert keine weiteren Einträge hinzu.
Wenn doch, erweitere ich den Programm-Code um den Eintrag!

Wenn diese Info in der Liste ist, möchte ich Variabeln auf Werte setzen, die diesem Wert in der Liste zugeordnet sind. In einer Tabelle sähe das so aus (für einen Datensatz):
Code:
Feld-Name->Inhalt
Auto->BMW_Z3_1
Besitzer->Hans
Kilometer->12000
Das Feld "Auto" ist dabei die "Info" die ich bereits auslese.
Was wäre nun die beste Methode? Meiner Meinung nach käme folgendes in Frage:
  • IF-Abfrage
  • TList
  • Array
Zu 1)Hier wäre die Pflege der Daten nur umständlich. Ich müsste immer IF-Abfragen setzen.

Zu 2) Wie kann ich die denn "hardcoded" ins Programm einbinden und vor allem: Wie prüfe ich dagegen? Erst "Count" um die Zahl der Datensätze herauszubekommen und dann for 1 to ...?

Zu 3) Genau... - Hier wüsste ich nichts.

nailor 25. Aug 2004 17:34

Re: Welches Objekt wäre das richtige?
 
wenn ich dich richtig verstehe (bin da nicht so sicher) dann wären interessante sachen für dich:

ein record
ini-dateien

Nikolas 25. Aug 2004 17:37

Re: Welches Objekt wäre das richtige?
 
Willst du dann eine Liste der Autos haben, die in deiner Tabelle drin sind?

Für deinen Zweck könnte eine TStringlist ganz gut funktionieren:
Delphi-Quellcode:
var
// Liste mit Autos:
list: TStringlist;
i: integer;
begin
list:= TStringlist.create;
list.add('bmw');
list.add('Audi');
list.add('VW');

i:= list.IndexOF('Audi'); // --> '1', da das erste Element die Nummer '0' hat;
i:= list.IndexOF('Golf'); // --> '-1', gesuchtes Element ist nicht in der Liste

//wenn du fertig bist:
list.free;


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