Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Probleme mit kommawerten einer tabelle (https://www.delphipraxis.net/92486-probleme-mit-kommawerten-einer-tabelle.html)

Mr. MC 20. Mai 2007 22:03


Probleme mit kommawerten einer tabelle
 
Delphi-Quellcode:
for i:=1 to 5 do
PaintBox1.Canvas.Pixels [round(strtoint (stringgrid1.cells[0,i])),round(strtoint (stringgrid1.cells[1,i]))];



warum beschwert sich immer das programm das eine kommazahl in der tabelle keine intgerzahl ist wenn ich diesen round befehl gegeben habe der den wert doch runden soll??? :evil:

Hawkeye219 20. Mai 2007 22:09

Re: Probleme mit kommawerten einer tabelle
 
Hallo,

die Funktion StrToInt versucht Strings in Integer-Werte umzuwandeln. Für Fließkommazahlen gibt es die Funktion Delphi-Referenz durchsuchenStrToFloat.

Gruß Hawkeye

xZise 20. Mai 2007 22:11

Re: Probleme mit kommawerten einer tabelle
 
Rate mal, was "StrToInt" macht....
"StringToInteger" ^^ Und Round erwartet eine Fließkommazahl. Und Integer sind keine Fließkommazahlen und deshalb mekert er rum.
Entweder du lässt das Round weg, oder du wandelts es nicht ein Integer sondern Fließkommazahl um. Dann sollte auch alles wieder gehen!

[edit & redBox]Arghs Hawkeye219 :) Danke xD[/edit & redBox]

oki 21. Mai 2007 06:26

Re: Probleme mit kommawerten einer tabelle
 
Hi XZiese,

das ist so nicht korrekt. Rount verträgt schon Integerwerte. Sowohl als Typ, wie auch als Wert. Das Problem steckt im StrtoInt. Hier dürfen die Strings in der Tabelle wirklich nur Integer repräsentieren. Ein Kommawert und Pech. Damit ist StrtoFloat an der Stelle vorzuziehen (aber nicht wegen Round).

Gruß oki


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:35 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz