Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   CurrToStr() ohne Tausender-Trennung (https://www.delphipraxis.net/107244-currtostr-ohne-tausender-trennung.html)

cs.rumpelstilzchen 24. Jan 2008 17:57


CurrToStr() ohne Tausender-Trennung
 
Hallo Leute,
hab ein kleines Problem und komme einfach nicht auf die Lösung: :gruebel:

Ich möchte einen Currency-Wert in einen String umwandeln und dabei die Windows-Einstellungen berücksichtigen. Also bietet sich CurrToStr an...

Delphi-Quellcode:
var
  szDummy : String;
  cBetrag : Currency;
  MyFormatSettings: TFormatSettings;

begin
  cBetrag := 12345.56;
  GetLocaleFormatSettings(LOCALE_USER_DEFAULT,MyFormatSettings);
  szDummy := CurrToStr(cBetrag,MyFormatSettings);

end;
Obwohl im Windows Tausenderpunkte eingestellt sind und auch in den MyFormatSettings so zu sehen sind, wird im Beispiel '12345,56' ausgegeben. Die Tausender-Trennung - obwohl mit '.' in den FormatSettings angegeben, wird nicht ausgeführt...

Was mache ich da falsch???

Danke für jede Hilfe...

marabu 24. Jan 2008 18:49

Re: CurrToStr() ohne Tausender-Trennung
 
Hallo Rumpelstilzchen,

du hast einfach die falsche Funktion verwendet - CurrToStr() verwendet das vordefinierte Format ffGeneral.

Besser so:

Delphi-Quellcode:
szDummy := CurrToStrF(cBetrag, ffCurrency, 2, MyFormatSettings);
Freundliche Grüße

DP-Maintenance 24. Jan 2008 18:49

DP-Maintenance
 
Dieses Thema wurde von "SirThornberry" von "Programmieren allgemein" nach "VCL / WinForms / Controls" verschoben.

cs.rumpelstilzchen 24. Jan 2008 18:54

Re: CurrToStr() ohne Tausender-Trennung
 
:hello: Danke marabu, es funzt...


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