Frank
Your example work ok on Delphi7. Tomrrow i will try it on Turbo Explorer 
over my programm.

Thanks

Frank Reynolds escribió:
> Pablo,
>
> Here is some code you can try...
>
> It is the Unit and DFM files for a very simple test I was doing...
>
> It should come up and work as it is, but if not, then add in some more 
> data..
>
> Cheers,
>
> Frank
>   
>> I have tried many examples, so I must doing something wrong .
>> I am working on the virtuallistview example of turbo explorer (the same 
>> of delphi 7) an I need to click on the column header and
>> sort the list for that column like the Window$ explorer.
>>
>> Thanks
>>
>>
>> Rob Kennedy escribió:
>>
>>   
>>     
>>> pablo gietz wrote:
>>>   
>>>     
>>>       
>>>> I can't sort the column in a listview. I have tried the examples and 
>>>> doesn't work.
>>>>     
>>>>       
>>>>         
>>> What examples have you tried? In what ways did they not work? What were 
>>> you expecting to happen, and what happened instead?
>>>
>>> http://www.catb.org/~esr/faqs/smart-questions.html#bespecific
>>> http://www.catb.org/~esr/faqs/smart-questions.html#beprecise
>>>
>>>     
>>>       
>
> ******************************
> unit LV_u;
>
> interface
>
> uses
>   Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
>   ComCtrls;
>
> type
>   TForm1 = class(TForm)
>     ListView1: TListView;
>     procedure ListView1ColumnClick(Sender: TObject; Column: TListColumn);
>     procedure FormActivate(Sender: TObject);
>   private
>     { Private declarations }
>   public
>     { Public declarations }
>   end;
>
> var
>   Form1: TForm1;
>   o    : boolean;
>
> implementation
>
> {$R *.DFM}
>
> function MySortProc(Item1, Item2 : TListItem; ParamSort: Integer): 
> integer; stdcall;
> var  t1, t2 : string;
> begin
>      case ParamSort of
>         0 : begin
>                t1 := Item1.Caption;
>                t2 := Item2.Caption;
>             end;
>         1..4 : begin
>                t1 := Item1.SubItems[ParamSort-1];
>                t2 := Item2.SubItems[ParamSort-1];
>             end;
>      end;
>      if o then
>         result := lstrcmp(PChar(t1), PChar(t2))
>      else
>         result := -lstrcmp(PChar(t1), PChar(t2));
> end;
>
> procedure TForm1.ListView1ColumnClick(Sender: TObject;
>   Column: TListColumn);
> begin
>      ListView1.CustomSort(@MySortProc, Column.Index);
>      o := not o;
> end;
>
> procedure TForm1.FormActivate(Sender: TObject);
> begin
>      o := true;
> end;
>
> end.
>
> *****************************************
>
> object Form1: TForm1
>   Left = 192
>   Top = 107
>   Caption = 'List View Sorting Test'
>   ClientHeight = 266
>   ClientWidth = 427
>   Color = clBtnFace
>   Font.Charset = DEFAULT_CHARSET
>   Font.Color = clWindowText
>   Font.Height = -11
>   Font.Name = 'MS Sans Serif'
>   Font.Style = []
>   OldCreateOrder = False
>   OnActivate = FormActivate
>   PixelsPerInch = 96
>   TextHeight = 13
>   object ListView1: TListView
>     Left = 16
>     Top = 48
>     Width = 409
>     Height = 150
>     Columns = <
>       item
>         Caption = 'No'
>         Width = 30
>       end
>       item
>         Caption = 'Name'
>         Width = 90
>       end
>       item
>         Caption = 'Addr1'
>         Width = 90
>       end
>       item
>         Caption = 'Addr2'
>         Width = 90
>       end
>       item
>         Caption = 'Town'
>         Width = 90
>       end>
>     Items.ItemData = {
>       01680100000500000000000000FFFFFFFFFFFFFFFF0400000000000000013100
>       04460072006500640008730068006F0072007400200073007400000550006500
>       72007400680000000000FFFFFFFFFFFFFFFF0400000000000000013200035400
>       6F006D00000007420075006E00620075007200790000000000FFFFFFFFFFFFFF
>       FF04000000000000000133000548006100720072007900093300340020004800
>       6100790020005300740000055000650072007400680000000000FFFFFFFFFFFF
>       FFFF04000000000000000134000341006C0066000D3200320020005300680065
>       006E0074006F006E0020005200640000075300750062006900610063006F0000
>       000000FFFFFFFFFFFFFFFF040000000000000001350005420065007400740079
>       000A3900390020004400610076006500200052006400000641006C0062006100
>       6E007900FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
>       FFFFFFFFFFFFFFFFFFFFFFFF}
>     TabOrder = 0
>     ViewStyle = vsReport
>     OnColumnClick = ListView1ColumnClick
>   end
> end
> __________________________________________________
> Delphi-Talk mailing list -> Delphi-Talk@elists.org
> http://www.elists.org/mailman/listinfo/delphi-talk
>
>   



---
avast! Antivirus: Saliente mensaje limpio.
Base de datos de Virus (VPS): 000754-2, 05/07/2007
Comprobado en: 6/7/2007 12:06:04 a.m.
avast! tiene los derechos reservados (c) 2000-2007 ALWIL Software.
http://www.avast.com



__________________________________________________
Delphi-Talk mailing list -> Delphi-Talk@elists.org
http://www.elists.org/mailman/listinfo/delphi-talk

Reply via email to