Einzelnen Beitrag anzeigen

Benutzerbild von Grishnak
Grishnak

Registriert seit: 15. Sep 2005
Ort: Neu-Ulm
111 Beiträge
 
RAD-Studio 2009 Arc
 
#7

Re: dynamische TStringList(en)

  Alt 23. Sep 2005, 23:21
Ich empfehle dir eine abgeleitete Klasse von TObjectList:

Delphi-Quellcode:
type
  TStringListList = class(TObjectList)
  private
    function GetStringList(index: integer): TStringList;
    procedure SetStringList(index: integer; const Value: TStringList);
  public
    property StringList[index: integer]: TStringList read GetStringList write SetStringList; default;
  end;

[...]

{ TStringListList }

function TStringListList.GetStringList(index: integer): TStringList;
begin
  Result:=Items[index] as TStringList;
end;

procedure TStringListList.SetStringList(index: integer; const Value: TStringList);
begin
  Items[index]:=Value;
end;
Dann kannst du dir die ständige Typumwandlung (ObjectList.Items[i] as TStringList) sparen! Und wie Christian Seehase schon erwähnte, gibt die TObjectList die in ihr gespeicherte Objekte auch selbstständig wieder frei, wenn du sie - die ObjectList - nicht mit Create(false) angelegt hast.

//EDIT: wenn du eine TObjectList verwenden willst, musst du im USES-Abschnitt noch "Contnrs" einbinden!
Mach' etwas idiotensicher und irgendjemand erfindet einen besseren Idioten!
  Mit Zitat antworten Zitat