Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi gleitkommaoperation ??? (https://www.delphipraxis.net/128775-gleitkommaoperation.html)

thomas2009 5. Feb 2009 23:11


gleitkommaoperation ???
 
Hallo

kann jemand mir sagen wo des Problem ist ?
Ich erhalte diese Fehler-Meldung: gleitkommaoperation
Delphi-Quellcode:
Edit2.Text := IntToStr(Round( (StrToInt(Edit1.Text)*25.4) /(GetDeviceCaps(DC,LOGPIXELSX))));

fkerber 5. Feb 2009 23:43

Re: gleitkommaoperation ???
 
Hi!

Du versuchst einen Float (Kommazahl) mit einer Funktion umzuwandeln, die einen Integer (Ganzzahl) erwartet.

Versuche es mal mit FloatToStr


Wenn man ein round überliest, sollte man besser nicht antworten :duck:



Ciao, Frederic

jaenicke 5. Feb 2009 23:43

Re: gleitkommaoperation ???
 
Zitat:

Zitat von thomas2009
Ich erhalte diese Fehler-Meldung: gleitkommaoperation

Ungültige Gleitkommaoperation?

Ich vermute, dass GetDeviceCaps 0 zurückgibt, vielleicht weil der DC ungültig ist. Hast du einmal die einzelnen Bestandteile debuggt? Also was GetDeviceCaps zurückgibt z.B.?
Oder steht im Editfeld kein Integer?

Der Code an sich ist ansonsten korrekt.

thomas2009 6. Feb 2009 00:01

Re: gleitkommaoperation ???
 
Aber warum der Code hier funktioniert ?
Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
var pixel_cm : Single;
begin
  pixel_cm :=(GetDeviceCaps(DC,LOGPIXELSX)/2.54);
 Edit1.Text:=FloatToStr(pixel_cm);
Edit2.Text:=IntToStr(Round(Form1.Width/pixel_cm));
 
end;
Edit:
der Code oben funktioniert aber nicht wenn ich ihn in mein Projekt lege
sondern in ein neues Projekt getestet
Waran kann das liegen ?
warum funktioniert der Code in ein Projekt und in das andere nicht ?

nuclearping 6. Feb 2009 04:49

Re: gleitkommaoperation ???
 
[entfernt]

Tante Edith kam rein und meinte "Egal, ich geh erstmal 'n Tee trinken." :mrgreen:

jaenicke 6. Feb 2009 05:16

Re: gleitkommaoperation ???
 
Zitat:

Zitat von thomas2009
der Code oben funktioniert aber nicht wenn ich ihn in mein Projekt lege
sondern in ein neues Projekt getestet
Waran kann das liegen ?
warum funktioniert der Code in ein Projekt und in das andere nicht ?

Was ist DC denn bei dir? Wozu die globale Variable und wo wird dieser ein Wert zugewiesen?

Wie gesagt: hast du einmal debuggt was bei den einzelnen Werten herauskommt?


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:20 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