[Delphi] ListView et CustomSort

ListView et CustomSort [Delphi] - Programmation

Marsh Posté le 21-07-2001 à 18:19:28    

V'là mon code pour trier une ListView par ordre décroissant sur le clic d'une colonne (tirer de l'aide Delphi...)

Code :
  1. procedure TMain.ListTxtSortList(Sender: TObject; Column: TListColumn);
  2. begin
  3. ListTxt.CustomSort(@CustomSortProc, Column.Index)
  4. end;
  5. function TMain.CustomSortProc(Item1, Item2: TListItem; ParamSort: integer): integer; stdcall;
  6. begin
  7. Result:=-lstrcmp(PChar(TListItem(Item1).Caption), PChar(TListItem(Item2).Caption))
  8. end;


Le function "CustomSortProc" est déclarée private et il me met l'erreur sur "@CustomSortProc" en disant "Variable requise" ?!?!
 
Si quelqu'un sait m'aider...

Reply

Marsh Posté le 21-07-2001 à 18:19:28   

Reply

Marsh Posté le 22-07-2001 à 00:48:26    

ben moi j'ai ca dans l'aide :
 
function CustomSortProc(Item1, Item2: TListItem; ParamSort: integer): integer; stdcall;
begin
  Result := -lstrcmp(PChar(TListItem(Item1).Caption),
                     PChar(TListItem(Item2).Caption));
end;
 
procedure TForm1.Button1Click(Sender: TObject);
begin
ListView1.CustomSort(@CustomSortProc, 0);
end;
 
la grande difference c'est :  
procedure TMain.customsortproc
au lieu de :  
procedure customsortproc
 
Ca marche peut etre avec ta version a condition de faire l'appel
Listtxt.customsort(@TMain.customSortProc, ...)

Reply

Marsh Posté le 22-07-2001 à 12:01:22    

En effet il faut une fonction à part et non pas une méthode d'un objet !

 

[edtdd]--Message édité par antp--[/edtdd]


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 22-07-2001 à 18:54:21    

Pour la fonction, je savais étant donné que je l'ai implémenté, j'ai essayé aussi sans la dépendance (CustomSortProc au lieu de TMain.CustomSortProc) mais ketket branlette balayette...:(
 
Bon ben, je retourne à mes recherches...
 
Merci quand même!

 

[edtdd]--Message édité par Bendes--[/edtdd]

Reply

Marsh Posté le 22-07-2001 à 20:01:41    

je suis pas sûr que le @ soit nécessaire...


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 22-07-2001 à 20:22:07    

si tu peux changer de composants, jette un oeil au TdfsEnhListView ou au TdfsExtListView dispos sur http://www.delphifreestuff.com .


---------------
www.alliancefrancophone.org ... Home is where the heart is
Reply

Marsh Posté le 22-07-2001 à 20:57:20    

Tout simplement thx!!!

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed