Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi '1.000,0000' ist kein gültiger Gleitkommawert (https://www.delphipraxis.net/96174-1-000-0000-ist-kein-gueltiger-gleitkommawert.html)

LOMBI 19. Jul 2007 19:46


'1.000,0000' ist kein gültiger Gleitkommawert
 
Hallo,

in meinem TEdit wird die Währung richtig mit Tausendertrennung angezeigt.
Mit dem Speichern tritt die Meldung auf, dass es sich um keinen gültigen
Gleitkommawert handelt.

Delphi-Quellcode:
var
  e: Extended;
begin
  with Sender as TEdit do
    if TryStrToFloat(Text, e) then
      Text := Format('%0.4n', [e]);
Wer hilft bitte?

Gruß
Lombi

mkinzler 19. Jul 2007 19:47

Re: '1.000,0000' ist kein gültiger Gleitkommawert
 
Wie sind die Systemeinstellungen für Dezimal- und Tausendertrenner?

Luckie 19. Jul 2007 19:49

Re: '1.000,0000' ist kein gültiger Gleitkommawert
 
Zitat:

Zitat von LOMBI
Wer hilft bitte?

Das grau zwischen deinen Ohren. Tausendertrennzeichen gehören nicht in einen Fließkommawert. Entferne sie.

LOMBI 19. Jul 2007 19:57

Re: '1.000,0000' ist kein gültiger Gleitkommawert
 
Heißt das, ein Tausendertrenner ist ausschließlich über TMaskEdit möglich?

mkinzler 19. Jul 2007 20:00

Re: '1.000,0000' ist kein gültiger Gleitkommawert
 
Wichtig ist halt das das Format mit dem im System hinterlegten übereinstimmt oder die Konstanten richtig gesetzt sind.

Helmi 19. Jul 2007 20:01

Re: '1.000,0000' ist kein gültiger Gleitkommawert
 
Zitat:

Zitat von LOMBI
Heißt das, ein Tausendertrenner ist ausschließlich über TMaskEdit möglich?

Er meinte damit, dass der Tausendertrenner ruhig in deinem Edit drin sein darf, nur wenn du es in ein Float (deinem e) konvertieren willst, muss der Tausendertrenner raus.

So was in der Art:
Delphi-Quellcode:
var
  e: Extended;
  S: String;
begin
  with Sender as TEdit do
    begin
      S := StringReplace(Text, '.', '', [rfReplaceAll]);
 
      if TryStrToFloat(S, e) then
        Text := Format('%0.4n', [e]);
    end;


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