AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

MaskEdit Gleitkommafehler

Ein Thema von MarcoGöli · begonnen am 28. Apr 2015 · letzter Beitrag vom 28. Apr 2015
Antwort Antwort
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.660 Beiträge
 
Delphi 12 Athens
 
#1

AW: MaskEdit Gleitkommafehler

  Alt 28. Apr 2015, 15:11
StrToFloatDef erwartet mindestens 2 Parameter: den umzuwandelnden String und einen Standardwert, der dann genommen wird, wenn die Umwandlung nicht möglich ist. Daher kann der Compiler mit
Zitat:
StrToFloatDef(MaskEdit1.Text)
nichts anfangen, da kein Standardwert angegeben wurde.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
MarcoGöli

Registriert seit: 20. Jan 2015
Ort: Schweiz, Luzern
17 Beiträge
 
Delphi XE7 Professional
 
#2

AW: MaskEdit Gleitkommafehler

  Alt 28. Apr 2015, 15:24
Float hab ich genommen, weil ein minus oder pluszeichen an erster Stelle steht.
Heisst ich müsste die Leerzeichen mittels StringReplace löschen oder mit der Trim Funktion, jedoch bleibt auch dabei der Fehler bestehen.
Marco
  Mit Zitat antworten Zitat
Bjoerk

Registriert seit: 28. Feb 2011
Ort: Mannheim
1.384 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: MaskEdit Gleitkommafehler

  Alt 28. Apr 2015, 17:37
Du kannst auch ein ganz normales Edit nehmen und als Ereignis würde ich eher OnExit nehmen. Manche User geben ganze gerne auch ma 1,2E2 ein.

Dann vielleicht eine eigene function:
Delphi-Quellcode:
function StrToFloatDefEx(Value: string; DefaultValue, MinValue, MaxValue: double): double;
begin
  - Leerzeichen rauslöschen
  - als DecimalSeparator auch '.' zulassen
  - mit StrToFloatDef in Zahl umwandeln
  - Grenzen überprüfen
end;

procedure TForm1.Edit1Exit(Sender: TObject);
begin
  Edit1.Text := FloatToStr(StrToFloatDefEx(Edit1.Text, 0, -400, 400));
end;
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:15 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