![]() |
DWORD nach single konvertieren
Delphi-Quellcode:
CurrentMilliseconds : DWORD;
StartMilliseconds : DWORD;
Delphi-Quellcode:
wie kann ich dieses zeile nach single konvertieren finde nix.
(CurrentMilliseconds - StartMilliseconds / 1000.0)
gruss Emil |
Re: DWORD nach single konvertieren
Delphi-Quellcode:
erg: Single;
... erg := (CurrentMilliseconds - StartMilliseconds) / 1000.0; |
Re: DWORD nach single konvertieren
Zitat:
Delphi-Quellcode:
Dann müßt Result := erg sein oder ?
function GetTimes: single;
Var erg : single begin if not StartMilliseconds <> 0 then StartMilliseconds := GetTickCount(); CurrentMilliseconds := GetTickCount(); erg := (CurrentMilliseconds - StartMilliseconds / 1000.0); Result := erg; end; Frage mich nur warum das nicht einfach so geht ??
Delphi-Quellcode:
Denke das ist mein problem mit der Schleife wurde immer ein DWORD wertübergeben
single(CurrentMilliseconds - StartMilliseconds / 1000.0);
deshalb haben sich die Peaks nicht vom spectrum gelößt. gruss und wie immer danke für deine Hilfe.. |
Re: DWORD nach single konvertieren
Es sollte auch so gehen:
Delphi-Quellcode:
Achtung beachte meine Korrektur der Klammersetzung.
result := (CurrentMilliseconds - StartMilliseconds) / 1000.0;
|
Re: DWORD nach single konvertieren
Zitat:
immer 0; static DWORD StartMilliseconds sind static declariert weiss nicht ob das jetzt was ausmacht. gruss |
Re: DWORD nach single konvertieren
Hallo Emil,
Zitat:
Delphi-Quellcode:
oder noch besser:
if not (StartMilliseconds <> 0) then
StartMilliseconds := GetTickCount();
Delphi-Quellcode:
NOT bindet stärker als ein Vergleich und wird somit zuerst ausgewertet.
if (StartMilliseconds = 0) then
StartMilliseconds := GetTickCount(); Gruß Hawkeye |
Re: DWORD nach single konvertieren
Zitat:
Delphi-Quellcode:
so ist der wert immer 0
function GetTimes: single;
Var sng : Single; begin if not StartMilliseconds <> 0 then StartMilliseconds := GetTickCount(); CurrentMilliseconds := GetTickCount(); sng := (CurrentMilliseconds - StartMilliseconds) / 1000.0; Result := sng; end;
Delphi-Quellcode:
So immer DWORD oder integer keinesfalls Single das würde einen kommawert
function GetTimes: single;
Var sng : Single; begin if not StartMilliseconds <> 0 then StartMilliseconds := GetTickCount(); CurrentMilliseconds := GetTickCount(); sng := (CurrentMilliseconds - StartMilliseconds / 1000.0); Result := sng; end; zurückliefern. Beides funktioniert irgendwie nicht. Wenn ich keinen single wert bekomme dann lößt sich mein Peak nicht von den Spectrum balken.. sehr seltsam das ganze. gruss Emil |
Re: DWORD nach single konvertieren
Hallo Emil,
du scheinst unsere Anworten nicht richtig durchzulesen. Ich habe dir schon zweimal die Klammern korrigiert. Und Hawkeye hat dir gesagt, das der Fehler in der Abfrage liegt. [Edit: Ich hätte meine Antwort vor dem posten auch mal Durchlesen sollen...Tippfehler (hoffentlich alle) korrigiert] |
Re: DWORD nach single konvertieren
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:
Bin im momnet etwas daneben .. da schon so viele sachen ausprobiert welche kein ergebnis zur folge hatte. DWORD zu Single nee Klammer versetzt und die IF abfrage korrigiert schon gehts. Und dafür 2 Tage rumsuchen wo der Fehler nun liegt. Nun funktioniert es auch... Fehler 1. falsche klammer Fehler 2. 'Nicht mehr oder weniger' sondern = 0 Danke an beide. Hier ein pic wies nun ausschaut... Die Texture kann man immer noch ändern, vielleicht dem user überlassen welche er für das Spectrum und den Peaks einfügen will. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:14 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 by Thomas Breitkreuz