Einzelnen Beitrag anzeigen

kaiser1401

Registriert seit: 6. Mär 2006
Ort: Gescher
157 Beiträge
 
Delphi 7 Professional
 
#1

Problem mit CustomSort in Listview

  Alt 6. Mär 2006, 15:29
Hallo Leute,

ich habe ein kleines Problem: Ich möchte eine Aufgabenverwaltung für mehrere Benutzer schreiben. Diese Aufgaben sollen auch auf einer Übersicht Sortiert nach benutzer und Priorität sortiert werden.

Ich habe mir für die Listview eine Sortierroutine geschrieben die aber nicht so arbeitet wie ich das gerne hätte und ich weis ncith wieso

Die Routine:

Delphi-Quellcode:
 function AuswertungSortProc(Item1, Item2: TListItem; Data: Integer): Integer; stdcall;
   var prio1,prio2:integer;
  begin
    if Item1.Caption <> Item2.Caption then
     Result:=CompareText(Item1.Caption,Item2.Caption)
    else
     begin
      prio1:=strtoint(item1.SubItems[0]);
      prio2:=strtoint(item2.SubItems[0]);
      result:=prio2-prio1;
     end;
    if data = 1 then Result := -Result;
  end;
Der Aufruf:

Delphi-Quellcode:
ListView1.CustomSort(@AuswertungSortProc, 0);
   aufg := Listview1.Items.Add;
   aufg.Caption:=user;
   aufg.SubItems.Add(prio);
   aufg.SubItems.Add(text);
Das Ergebnis sieht dann so aus:

Benutzer | Prio | Text
user1 | 1200 | aufgabe abce...
user1 | 200 | aufgabe 123
user1 | 100 | aufgabe 345
user2 | 120 | aufgebe 876
user1 | 200 | aufgabe cde

sollte aber so aussehen:

Benutzer | Prio | Text
user1 | 1200 | aufgabe abce...
user1 | 200 | aufgabe 123
user1 | 200 | aufgabe cde
user1 | 100 | aufgabe 345
user2 | 120 | aufgebe 876


Kann mir jemand sagen was ich falsch mache??

Ich weis, dass es schon viele Beiträge zum sortieren gibt, aber irgendiwe finde ich da keine Lösung auf mein Problem

dank schon mal im vorraus

-Kaiser
  Mit Zitat antworten Zitat