osztály tstringlist
Delphi szakemberek számára. És összeállításokat
ingatlan Strings [Index: Integer]: string olvasni Get levelet Put; alapértelmezett;
Hogy működik a belső eljárások Get és a Put használjuk az ingatlan. amelyek használata belső változó FList.
TStringltem = rekord FString: string;
TStringltemList = array [0..MaxListSize] a TStringltem;
A maximális méret a lista korlátozódik állandó
MaxListSize = Maxint div 16;
amelynek értéke után néhány egyszerű számítást lesz 134 217 727. Tehát egyértelmű, hogy egy listát a Delphi húrelmélet véges, bár a gyakorlatban sokkal gyakoribbak mérete a lista csak a méret a rendelkezésre álló memóriát.
Kezelés külön tétel a listán keresztül lehet húrok tulajdonság tehát:
Mindkét módszer egyenértékűek.
Egy egyszerű feladat, akkor adja meg az új értéket csak az elem már létezik. Új elem a Hozzáadás eljárás és AddStrings.
funkció hozzáadása (const S: string): integer;
hozzáfűz egy listát az új elem, hogy hozzárendeli értéke s és visszaküldésével index az új elemet a listában.
eljárás hozzáfűzése (const S: string);
egyszerűen az, hogy az Új funkciót. Az egyetlen különbség az, hogy az eljárás nem ad vissza az index, az új elemet.
eljárás AddStrings (Húrok: TStrings);
Hozzáteszik, hogy a lista egy sor új elemeket kell adni egy másik listát továbbítja a paraméter szálakat.
Új elem, hogy egy tetszőleges helyen a listában adhatunk, ha szükséges. Ehhez használja a módszert
eljárás Insert (Index: integer; const S: string);
s elem, amely beilleszti a helyére index elem indexet. Így ezek az elemek el vannak tolva egy pozícióval lefelé.
Ahhoz, hogy töröl egy elemet egy olyan módszert használ
eljárás törlése (Index: Egész szám);
eljárás áthelyezése (Curlndex, Newlndex: Egész szám);
Ez mozgatja a megadott elem index curindex. egy új előírásai szerint az index Newlndex.
eljárás Exchange (Indexl, indexe2: Egész szám);
elcseréli elemek indexek index1 és indexe2.
Elég gyakran a listákat keverjük húr hasonló adatokat a következő:
Példaként a húr INI fájl vagy a rendszerleíró adatbázist. Különösen ilyen esetekre a lista nézetben a sorok két tulajdonságait. A nevek tulajdonság tartalmazza a szöveget, hogy az egyenlőségjel. Az ingatlan értékének a szöveget tartalmazza, miután az alapértelmezett az egyenlőségjel. Azonban az elválasztó karaktert helyettesíteni lehet bármilyen más, a tulajdon
ingatlan NameValueSeparator: Char;
Hozzáférés a tulajdonság értékek végezzük érdemben értékeli. Például, ha a lista egy húr
A value tulajdonság értéke lesz
Ezen túlmenően, a value tulajdonság értéke lehet elérni, ha tudod, hogy index:
ingatlan ValueFormlndex [Index: Integer]: string;
ingatlan objektumok [Index: Integer]: TObject;
Az ingatlan elemfüzérek és tárgyak társított tulajdonság az objektum az azonos index. Ha egy sorban nincs kapcsolódó tárgy, a tárgyak ingatlan Nil. Egy tárgy köthető több listát a húrok egyszerre.
Leggyakrabban a tárgyakat kell tárolni az egyes tételek további információt. Például, a városok listája minden elem járulékosan tárolja a lakosság, terület, közigazgatási státusz stb Ehhez létrehozhat ilyet osztály ..:
Ahhoz, hogy hozzá a vonal objektumok listája, használja AddObject módszer.
funkció AddObject (const S: string; AObject: TObject): egész; virtuális;
Megjegyezzük, hogy a AObject paramétert kell átadni a mutatót az objektum. A legegyszerűbb módja annak, hogy ezt így: