![]() |
TOBjectList mit zwei itemlists
Hi,
ich möchte ein Objekt, was zwei unterschiedliche Listen beinhaltet kann ich in einer TObjectList zwei Listen unterbringen? Und wie würden dann die Methoden SetItem2 und GetItem2 aussehen?
Delphi-Quellcode:
Oder ist das alles Unsinn und ich sollte eher ein solches Kosntrukt verwenden?:
unit Unit2;
interface uses Contnrs, Windows; type TMyItem = Class(TObject) private FName: String; public property Name: String read FName write FName; end; TMyItemList = class(TObjectList) protected function GetItem(ndx: Integer): TMyItem; procedure SetItem(ndx: Integer; const Value: TMyItem); public property Items[Index: Integer]: TSatz read GetItem write SetItem; property Items2[Index: Integer]: TSatz read GetItem2 write SetItem2; end; implementation function TMyItemList.GetItem2(ndx: Integer): TMyItem; begin // ??? end; procedure TMyItemList.SetItem2(ndx: Integer; const Value: TMyItem); begin // ??? end; function TMyItemList.GetItem(ndx: Integer): TMyItem; begin result := inherited GetItem(ndx) as TMyItem; end; procedure TMyItemList.SetItem(ndx: Integer; const Value: TMyItem); begin inherited SetItem(ndx, Value); end; end.
Delphi-Quellcode:
TMyDoubleList = class(Tobject)
private FMyItemList1: TMyItemList; FMyItemList2: TMyItemList; public property MyItemList1: TMyItemList read FMyItemList1 write FMyItemList1; property MyItemList2: TMyItemList read FMyItemList2 write FMyItemList2; end; Gruß angos |
Re: TOBjectList mit zwei itemlists
Ich würde Methode 2 nehmen
Dadurch musst du nicht unnötig die Get und SetItem Methoden schreiben.
Delphi-Quellcode:
Dann kanst du nämlich so direkt zugreifen:
TMyDoubleList = class(Tobject)
private FMyItemList1: TMyItemList; FMyItemList2: TMyItemList; public property MyItemList1: TMyItemList read FMyItemList1 write FMyItemList1; property MyItemList2: TMyItemList read FMyItemList2 write FMyItemList2; end;
Delphi-Quellcode:
var MyDoubleList : TMyDoubleList;
begin MyDoubleList := TMyDoubleList.Create(); //Weiß grad nicht aus dem Kopf welche Parameter gebraucht werden MyDoubleList.MyItemList1.add //weiß jetzt nicht ab jetzt die so heißt oder nicht end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:18 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz