1.000 also tausender Punkt
-
- Beiträge: 36
- Registriert: Di 14. Nov 2006, 10:15
- OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
- CPU-Target: xxBit
- Wohnort: Hohenstein - Er.
1.000 also tausender Punkt
Hi
lang lang ist es her, aber heute melde ich mich mal wieder.
Da findet eine tolle Berechnung (float) statt und das Ergebnis ist 1000 und wird 1.000 dargestellt.
Wie bekomme ich den Punkt weg?
lang lang ist es her, aber heute melde ich mich mal wieder.
Da findet eine tolle Berechnung (float) statt und das Ergebnis ist 1000 und wird 1.000 dargestellt.
Wie bekomme ich den Punkt weg?
mfg Jornbyte
http://forum.electronicwerkstatt.de/phpBB/" onclick="window.open(this.href);return false;
http://forum.electronicwerkstatt.de/phpBB/" onclick="window.open(this.href);return false;
-
- Lazarusforum e. V.
- Beiträge: 3177
- Registriert: Di 22. Jul 2008, 19:27
- OS, Lazarus, FPC: Lazarus: SVN; FPC: svn; Win 10/Linux/Raspbian/openSUSE
- CPU-Target: 32bit x86 armhf
- Wohnort: Köln
- Kontaktdaten:
Re: 1.000 also tausender Punkt
Wo? Wie? Was?jornbyte hat geschrieben:Da findet eine tolle Berechnung (float) statt und das Ergebnis ist 1000 und wird 1.000 dargestellt.
Wie bekomme ich den Punkt weg?
Ansonsten suche mal nach: Format Characters oder TFormatSettings, SysUtils.DefaultFormatSettings
MfG Socke
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein
-
- Lazarusforum e. V.
- Beiträge: 2808
- Registriert: Fr 22. Sep 2006, 10:38
- OS, Lazarus, FPC: Lazarus v2.0.10, FPC 3.2.0
- Wohnort: Hessen
- Kontaktdaten:
Re: 1.000 also tausender Punkt
Welche Funktion zum Umwandeln von Float in String verwendest Du denn? Bei StrToFloat beobachte ich den Punkt nicht.jornbyte hat geschrieben:Hi
lang lang ist es her, aber heute melde ich mich mal wieder.
Da findet eine tolle Berechnung (float) statt und das Ergebnis ist 1000 und wird 1.000 dargestellt.
Wie bekomme ich den Punkt weg?
Viele Grüsse, Euklid
- willi4willi
- Lazarusforum e. V.
- Beiträge: 167
- Registriert: Sa 1. Nov 2008, 18:06
- OS, Lazarus, FPC: Windows, Linux (debian) / Lazarus 3.2 / FPC 3.2.2
- CPU-Target: i386, win64, arm
Re: 1.000 also tausender Punkt
Hallo,
bei mir macht die Funktion FloatTostr(realwert,FormatSettings) auch keinen Punkt, obwohl FormatSettings.ThousandSeparator:='.' eingestellt ist.
Na, wenigstens haut das mit dem Komma hin.
Ist das ein Fehler?
Willi4willi
bei mir macht die Funktion FloatTostr(realwert,FormatSettings) auch keinen Punkt, obwohl FormatSettings.ThousandSeparator:='.' eingestellt ist.
Na, wenigstens haut das mit dem Komma hin.
Ist das ein Fehler?
Willi4willi
Viele Grüße
Willi4Willi
------------
-
- Lazarusforum e. V.
- Beiträge: 3177
- Registriert: Di 22. Jul 2008, 19:27
- OS, Lazarus, FPC: Lazarus: SVN; FPC: svn; Win 10/Linux/Raspbian/openSUSE
- CPU-Target: 32bit x86 armhf
- Wohnort: Köln
- Kontaktdaten:
Re: 1.000 also tausender Punkt
Vielleicht schon. Wäre toll, wenn du ein Code-Ausschnitt hier posten könntest.willi4willi hat geschrieben:bei mir macht die Funktion FloatTostr(realwert,FormatSettings) auch keinen Punkt, obwohl FormatSettings.ThousandSeparator:='.' eingestellt ist.
Na, wenigstens haut das mit dem Komma hin.
Ist das ein Fehler?
MfG Socke
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein
- willi4willi
- Lazarusforum e. V.
- Beiträge: 167
- Registriert: Sa 1. Nov 2008, 18:06
- OS, Lazarus, FPC: Windows, Linux (debian) / Lazarus 3.2 / FPC 3.2.2
- CPU-Target: i386, win64, arm
Re: 1.000 also tausender Punkt
Hallo,
hier ein Beispiel mit Edit-Feld und Button:
Viele Grüße
Willi4willi
hier ein Beispiel mit Edit-Feld und Button:
Code: Alles auswählen
unit Unit1;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls;
type
{ TForm1 }
TForm1 = class(TForm)
Button1: TButton;
Edit1: TEdit;
procedure Button1Click(Sender: TObject);
private
{ private declarations }
public
{ public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.lfm}
{ TForm1 }
procedure TForm1.Button1Click(Sender: TObject);
var a,b,c : real;
begin
a:=123.123;
b:=456.456;
c:=a*b;
DefaultFormatSettings.ThousandSeparator:='.';
DefaultFormatSettings.DecimalSeparator:=',';
Edit1.Text:=FloatToStr(c);
//oder
// Edit1.Text:=FloatToStr(c,DefaultFormatSettings);
end;
end.
Willi4willi
Viele Grüße
Willi4Willi
------------
-
- Lazarusforum e. V.
- Beiträge: 3177
- Registriert: Di 22. Jul 2008, 19:27
- OS, Lazarus, FPC: Lazarus: SVN; FPC: svn; Win 10/Linux/Raspbian/openSUSE
- CPU-Target: 32bit x86 armhf
- Wohnort: Köln
- Kontaktdaten:
Re: 1.000 also tausender Punkt
Habe gerade in den Quelltext geschaut. Das ist kein Fehler.
Der Tausender-Trenner wird nur gesetzt, wenn die interne Funktion FloatToStrFIntl den format-Parameter mit den Werten ffCurrency oder ffNumber aufgerufen wird (FloatToStr() übergibt ffGeneral). Als Nutzer kommst du an die Funktion nicht heran, kannst den Parameter aber über die Funktion FloatToStrF() steuern.
Der Tausender-Trenner wird nur gesetzt, wenn die interne Funktion FloatToStrFIntl den format-Parameter mit den Werten ffCurrency oder ffNumber aufgerufen wird (FloatToStr() übergibt ffGeneral). Als Nutzer kommst du an die Funktion nicht heran, kannst den Parameter aber über die Funktion FloatToStrF() steuern.
MfG Socke
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein
- willi4willi
- Lazarusforum e. V.
- Beiträge: 167
- Registriert: Sa 1. Nov 2008, 18:06
- OS, Lazarus, FPC: Windows, Linux (debian) / Lazarus 3.2 / FPC 3.2.2
- CPU-Target: i386, win64, arm
Re: 1.000 also tausender Punkt
Darum verwende ich auch lieber
Wenn ich keinen Punkt haben möchte dann vorher:
Das hat bei mir jedenfalls geklappt.
Viele Grüße
Code: Alles auswählen
Edit1.Text:=FormatFloat('#,###.##',c);
Code: Alles auswählen
DefaultFormatSettings.ThousandSeparator:=#0;
Viele Grüße
Viele Grüße
Willi4Willi
------------
-
- Beiträge: 36
- Registriert: Di 14. Nov 2006, 10:15
- OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
- CPU-Target: xxBit
- Wohnort: Hohenstein - Er.
Re: 1.000 also tausender Punkt
Danke euch, genau das "DefaultFormatSettings.ThousandSeparator:=#0;" hat den Punkt beseitigt