![]() |
Re: Listview sortieren (Dateigroesse und Speed)
Hmmm marabu,
Zitat:
Aber der Fehler tritt noch immer auf. |
Re: Listview sortieren (Dateigroesse und Speed)
Stimmt es denn, dass du D7 verwendest? Was sagt denn Code Insight, wenn du die öffnende Klammer hinter StrToFloat() schreibst?
|
Re: Listview sortieren (Dateigroesse und Speed)
Ja marabu ich verwende D7 und ich weiss nicht ob ich an der richtigen Stelle SysUtils.StrToFloat() eingetragen habe.
Muss doch in der Function StrToBytes rein? Der Code Insight sagt dasselbe overload. |
Re: Listview sortieren (Dateigroesse und Speed)
Vorletzter Versuch: halte die linke CTRL Taste gedrückt und klicke mal StrToFloat() an. Die IDE müsste dir dann die Stelle zeigen, an der die vermeintliche Funktion definiert ist. Das sollte dann die Unit SysUtils sein und die zweite Funktion ab dem Cursor zeigt dir, dass ich die Funktion richtig überladen habe.
|
Re: Listview sortieren (Dateigroesse und Speed)
Stimmt marabu beim druecken der CTRL Taste und auf StrtoFloat steht das in der Unit SysUtils:
Delphi-Quellcode:
function StrToFloat(const S: string): Extended;
begin if not TextToFloat(PChar(S), Result, fvExtended) then ConvertErrorFmt(@SInvalidFloat, [S]); end; function StrToFloat(const S: string; const FormatSettings: TFormatSettings): Extended; begin if not TextToFloat(PChar(S), Result, fvExtended, FormatSettings) then ConvertErrorFmt(@SInvalidFloat, [S]); end; |
Re: Listview sortieren (Dateigroesse und Speed)
Ich bin misstrauisch - hast du die Funktion so abgeändert?
Delphi-Quellcode:
Hier noch die Funktion ParseStr() für alle die sie noch nicht gefunden haben:
// function type changed for better StrToFloat() experience...
function StrToBytes(s: string; fs: TFormatSettings; decimal: boolean = true): extended; var sValue: string; factor: integer; begin if decimal then factor := 1000 else factor := 1024; sValue := ParseStr(s, ' '); Result := SysUtils.StrToFloat(sValue, fs); // watch this ! case s[1] of 'G': Result := Result * factor * factor; 'K': Result := Result * factor; end; end;
Delphi-Quellcode:
marabu
function ParseStr(var s: string; delimiters: string; purge: boolean = true): string;
var i: integer; begin i := 0; while (i < Length(s)) and (Pos(s[Succ(i)], delimiters) = 0) do Inc(i); Result := Copy(s, 1, i); Delete(s, 1, i + Ord(purge)); end; |
Re: Listview sortieren (Dateigroesse und Speed)
Genau so hab ich es gemacht marabu.
|
Re: Listview sortieren (Dateigroesse und Speed)
weshalb willst du denn den formatierten Größen/Geschwindigkeits String wieder in einen Int-Wert konvertieren?
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:55 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz