Einzelnen Beitrag anzeigen

Benutzerbild von dahead
dahead

Registriert seit: 16. Mai 2005
620 Beiträge
 
#6

Re: Listview sortieren (Dateigroesse und Speed)

  Alt 24. Nov 2005, 12:08
Ich meine, du musst in deinen angezeigten Elementen (ob records, objects oder sonstwas) ja irgendwo die Größe (ich gehe jetzt mal nicht auf die Geschwindigkeit ein) speichern.

Ich habe dir empfohlen, die Dateigröße in Bytes als Int64 in deinem Element zu speichern und als String. Dann kannst du beim Vergleich in der Listview die genauen Byte Werte vergleichen, und als Anzeige verwendest du den formatierten String. Hier mal ein Beispiel - denke so ist es etwas verständlicher.

Delphi-Quellcode:
 TFileItem = class(TObject)
  private
    fFullFilename,
    fSizeStr,
    fDateTimeStr: String;
    fSize: Int64;
    fDateTime: TDateTime;
  public
    constructor Create(const aFilename: String; const aFileSize: Int64);
    destructor Free;
    property Checked: Boolean read fChecked write fChecked;
    property FullFilename: String read fFullFilename;
    property Size: Int64 read write SetSize;
    property SizeStr: String read fSizeStr;
    property DateTimeStr: String read fDateTimeStr;
    property DateTime: TDateTime read fDateTime write SetDateTime;
  end;
Der Vorteil ist, dass du nicht bei jedem HeaderClick auf die Sortierspalte jeden Wert von FloatToStr oder sonstwas umrechnen musst.
  Mit Zitat antworten Zitat