/ Forside / Teknologi / Udvikling / Delphi/Pascal / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Delphi/Pascal
#NavnPoint
oldwiking 603
jrossing 525
rpje 520
EXTERMINA.. 500
gandalf 460
gubi 270
DJ_Puden 250
PARKENSS 230
technet 210
10  jdjespers.. 200
Template...
Fra : Henning E. Lund


Dato : 05-04-02 10:24

Hej

Kan man i Delphi 5 interprise versionen lave en template - noget i stil med
den man har i C++.

Jeg har nemlig en TList hvori jeg på design tidspunktet ikke ved hvad der
skal i listen. Det ved jeg kun i runtime...

Så ville det være godt, hvis man kunne lave en Template på en TList.
Elementerne i TList vil blive klasser...men det er lidt træls at lave en kø
til hver af de klasser der nu engang repræsenteres i min datamodel.

Håber I kan hjælpe.

mvh.
Henning.



 
 
David A. D. Konrad (05-04-2002)
Kommentar
Fra : David A. D. Konrad


Dato : 05-04-02 15:34

"Henning E. Lund" <enemark@mail.NOSPAMnet4you.dk> skrev i en meddelelse
news:3cad6d18$0$68805

> Kan man i Delphi 5 interprise versionen lave en template - noget i stil
med
> den man har i C++.

Nej.

> Jeg har nemlig en TList hvori jeg på design tidspunktet ikke ved hvad der
> skal i listen. Det ved jeg kun i runtime...

Du ved da, at det under alle omstændigheder vil være et object af typen
TObject...?

> Så ville det være godt, hvis man kunne lave en Template på en TList.
> Elementerne i TList vil blive klasser...men det er lidt træls at lave en

> til hver af de klasser der nu engang repræsenteres i min datamodel.

?? Jeg ville lave en specialisering af TList, hvor der implementereredes
indexbaserede getter/setter metoder for dé specielle klasse-typer som ønskes
gemt i listen. F.eks kunne man have en speciel klasse indeholdene en integer
og en boolean man gerne ville kunne gemme og hente hurtigt fra en TList :

type
TSpecialClass = class
private
Fbool: boolean;
Fint: integer;
procedure Setbool(const Value: boolean);
procedure Setint(const Value: integer);
public
property int:integer read Fint write Setint;
property bool:boolean read Fbool write Setbool;
end;

Du laver så en TList specialisering, hvor elementer af denne type kan sættes
eller hentes via et index :

THenningList = class(TList)
private
function GetSpecialClass(index: integer): TSpecialClass;
procedure SetSpecialClass(index: integer; const Value: TSpecialClass);
protected
public
published
property SpecialClass[index:integer]:TSpecialClass read GetSpecialClass
write SetSpecialClass;
end;





Henning E. Lund (06-04-2002)
Kommentar
Fra : Henning E. Lund


Dato : 06-04-02 07:26

Takker.....


"David A. D. Konrad" <david_konrad@hotmail.dk> skrev i en meddelelse
news:3cadb3f1$0$68778$edfadb0f@dspool01.news.tele.dk...
> "Henning E. Lund" <enemark@mail.NOSPAMnet4you.dk> skrev i en meddelelse
> news:3cad6d18$0$68805
>
> > Kan man i Delphi 5 interprise versionen lave en template - noget i stil
> med
> > den man har i C++.
>
> Nej.
>
> > Jeg har nemlig en TList hvori jeg på design tidspunktet ikke ved hvad
der
> > skal i listen. Det ved jeg kun i runtime...
>
> Du ved da, at det under alle omstændigheder vil være et object af typen
> TObject...?
>
> > Så ville det være godt, hvis man kunne lave en Template på en TList.
> > Elementerne i TList vil blive klasser...men det er lidt træls at lave en
> kø
> > til hver af de klasser der nu engang repræsenteres i min datamodel.
>
> ?? Jeg ville lave en specialisering af TList, hvor der implementereredes
> indexbaserede getter/setter metoder for dé specielle klasse-typer som
ønskes
> gemt i listen. F.eks kunne man have en speciel klasse indeholdene en
integer
> og en boolean man gerne ville kunne gemme og hente hurtigt fra en TList :
>
> type
> TSpecialClass = class
> private
> Fbool: boolean;
> Fint: integer;
> procedure Setbool(const Value: boolean);
> procedure Setint(const Value: integer);
> public
> property int:integer read Fint write Setint;
> property bool:boolean read Fbool write Setbool;
> end;
>
> Du laver så en TList specialisering, hvor elementer af denne type kan
sættes
> eller hentes via et index :
>
> THenningList = class(TList)
> private
> function GetSpecialClass(index: integer): TSpecialClass;
> procedure SetSpecialClass(index: integer; const Value: TSpecialClass);
> protected
> public
> published
> property SpecialClass[index:integer]:TSpecialClass read
GetSpecialClass
> write SetSpecialClass;
> end;
>
>
>
>



Søg
Reklame
Statistik
Spørgsmål : 177500
Tips : 31968
Nyheder : 719565
Indlæg : 6408518
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste