TList og sortering på flere

Tags:    delphi

Hej

Jeg har en TList med flere fields i hver record.

Hvordan kan jeg sikre, at jeg kan sortere på mere end "hoved-"Item? Hvis flere Items har samme indhold vil jeg gerne have at et sekundært-Item også tages med i sorteringen.

Jeg kan naturligvis løbe TListen igennem og per håndkraft sortere på det sekundære Item. Men er det en egenskab i TList, eller noget jeg har overset, der gør at jeg kan sortere på et sekundært Item også?

Godt Nytår
Mik



1 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 1 karma
Sorter efter stemmer Sorter efter dato
Hej

Jeg har en TList med flere fields i hver record.

Hvordan kan jeg sikre, at jeg kan sortere på mere end "hoved-"Item? Hvis flere Items har samme indhold vil jeg gerne have at et sekundært-Item også tages med i sorteringen.

Jeg kan naturligvis løbe TListen igennem og per håndkraft sortere på det sekundære Item. Men er det en egenskab i TList, eller noget jeg har overset, der gør at jeg kan sortere på et sekundært Item også?

Godt Nytår
Mik

Hej Mik,

Du skal selv sammenligne dine elementer vha. en "compare" funktion. Dette betyder at du også selv skal implementere sorteringen efter det sekundære index.

Det kunne f.eks. gøres på følgende måde (indeholder compare funktionen samt den record som TList forventes at indeholde):
Fold kodeboks ind/udKode 


Håber det hjælper,
/Michael.

[Redigeret d. 29/12-03 22:55:12 af Michael Skovslund]



t