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
MarcoGöli

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

MaskEdit Gleitkommafehler

  Alt 28. Apr 2015, 09:40
Hallo Community

Ich hab in Delphi ein MaskEdit eingefügt, in welchem positive wie negative Zahlen eingefügt werden können. Dies klappt auch ohne Fehlermeldung. Nun wenn ich im OnChange des MaskEdits nur von -400 bis +400 die Eingabe prüfe, dann wird erscheint immer die Fehlermeldung: ' ' ist kein gültiger Gleitkommawert.

Code:
procedure TForm9.MaskEdit1Change(Sender: TObject);
begin
  if (StrToFloat(MaskEdit1.Text) < -400) or (StrToFloat(MaskEdit1.Text) > 400) or (MaskEdit1.Text = '') then
  MaskEdit1.Text := '0';
  Edit1.Text := MaskEdit1.Text;
end;
Vielleicht weis einer von euch was da schief ist.
Marco
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.339 Beiträge
 
Delphi 12 Athens
 
#2

AW: MaskEdit Gleitkommafehler

  Alt 28. Apr 2015, 09:46
or (MaskEdit1.Text = '') als Letztes ... Was wird StrToFloat wohl machen, wenn es vorher auf den '' trifft?
Außerdem gibt es noch viel mehr "ungültige" Strings, als nur den '' .

PS: Delphi-Referenz durchsuchenStrToFloatDef oder Delphi-Referenz durchsuchenTryStrToFloat
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
MarcoGöli

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

AW: MaskEdit Gleitkommafehler

  Alt 28. Apr 2015, 14:01
hallo himitsu

Mit TryStrToFloat und StrToFloatDef zeigt mir Delphi immer einen Fehler an beim Debuggen.

In OnCreate der Form habe ich:

Code:
  FormatSettings.DecimalSeparator := '.';
  Application.UpdateFormatSettings := false;
Marco
  Mit Zitat antworten Zitat
Dejan Vu
(Gast)

n/a Beiträge
 
#4

AW: MaskEdit Gleitkommafehler

  Alt 28. Apr 2015, 14:08
Was zeigt Delphi denn für einen Fehler beim Debuggen?
  Mit Zitat antworten Zitat
MarcoGöli

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

AW: MaskEdit Gleitkommafehler

  Alt 28. Apr 2015, 14:19
Wenn ich im OnChange folgendes eintrage:

Code:
procedure TForm9.MaskEdit1Change(Sender: TObject);

begin
  if (StrToFloatDef(MaskEdit1.Text) < -400) or (StrToFloatDef(MaskEdit1.Text) > 400) or (MaskEdit1.Text = '') then
  MaskEdit1.Text := '0';
  Edit1.Text := MaskEdit1.Text;
end;
Dann schreibt mir Delphi:

[dcc64 Fehler] ueinstellungkopfzeile.pas(160): E2250 Es gibt keine überladene Version von 'StrToFloatDef', die man mit diesen Argumenten aufrufen kann
Marco
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

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

AW: MaskEdit Gleitkommafehler

  Alt 28. Apr 2015, 14:21
Delphi-Referenz durchsuchenStrToFloatDef
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
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 01:25 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