Einzelnen Beitrag anzeigen

Kirby886

Registriert seit: 23. Feb 2009
Ort: Niedersachsen
6 Beiträge
 
Delphi 2007 Professional
 
#1

Probleme mit StrToFloatDev + if-Abfrage

  Alt 27. Feb 2009, 13:07
Moin zusammen!

Erstmal ein dickes Lob an das Forum. Bin noch recht neu in der Delphi-Programmierung und das Forum ist echt eine große Hilfe.

Zu meinem Problem:

Ich hab die folgende Funktion mit zwei Strings als Parameter, die ich jeweils in Double umwandeln möchte. Sollte dies nicht möglich sein, so bekommt die jeweilige Double-Variable eine Gleitkommazahl mit einer Länge zugewiesen, die die maximal mögliche Länge des übergebenen Strings übersteigt.

So weit, so gut. Aber irgendwas stimmt mit meiner if-Abfrage nicht: Denn wenn ich z.B. Buchstaben übergebe erhalten die Double-Variablen zwar korrekt diese 0.00000000000009, aber ich komme trotzdem nicht in den if-Block, sondern in den else-Block. Also wo ist mein Denkfehler?

Delphi-Quellcode:
function TCalcControl.getResult(inSValue1, inSValue2: String): String;
var lDValue1, lDValue2: Double;
begin
  lDValue1 := StrToFloatDef(inSValue1, 0.00000000000009);
  lDValue2 := StrToFloatDef(inSValue2, 0.00000000000009);
  if ((lDValue1 = 0.00000000000009) or (lDValue2 = 0.00000000000009)) then result := 'Bitte nur Zahlen eingeben!'
  else [...]
end;
  Mit Zitat antworten Zitat