Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Dezimalkomma anstatt Dezimalpunkt (https://www.delphipraxis.net/33448-dezimalkomma-anstatt-dezimalpunkt.html)

Chegga 7. Nov 2004 11:51


Dezimalkomma anstatt Dezimalpunkt
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hi Leute,

ich habe einen kleinen Schönheitsfelher in meinem Taschenrechnerprogramm.
In der Ergebnisanzeige erscheint ein Dezimalkomma anstatt eines
Dezimalpunktes.
Das Ergebnisanzeigefeld ist ein Label...
Bei einem Editfeld müsste man unter Eigenschaften OnKeyPress wählen,
und als Quelltext dies eingeben:

Delphi-Quellcode:
if key = ',' then key := '.';
Wie muss ich das bei einem Label machen?? :?:

Hier noch mein Proggy (ich bin noch ganz am Anfang mit der
Entwicklung des proggys). :coder:

MfG Marc

Stanlay Hanks 7. Nov 2004 12:18

Re: Dezimalkomma anstatt Dezimalpunkt
 
Hi.

Schau dir mal in der OH "StringReplace" an.

Man liest sich, Stanlay :hi:

PS: Falsche Sparte ;)

Chegga 7. Nov 2004 12:48

Re: Dezimalkomma anstatt Dezimalpunkt
 
Hi Stanlay,

danke für deine Hilfe!!
(Ich muss sagen, dass ich selber auf die OH draufkommen hätte können.)
:coder2:

axelf98 7. Nov 2004 13:00

Re: Dezimalkomma anstatt Dezimalpunkt
 
Delphi-Quellcode:
function FloatToStrDez(Wert:Real; Dezimalzeichen:String): String;
var S: String;
begin
 S := FloatToStr(Wert);
 S := Stringreplace(S,DecimalSeparator,Dezimalzeichen,[rfReplaceAll]);
 result := S;
end;

Sprint 7. Nov 2004 13:17

Re: Dezimalkomma anstatt Dezimalpunkt
 
Wofür StringReplace wenn es FloatToStr gibt???

Delphi-Quellcode:
var
  Ergebnis: Double;
begin

  Ergebnis := 1234567.89;
  DecimalSeparator := ','; // DecimalSeparator ist eine Variable die sich in der Unit SysUtils befindet
  ShowMessage(FloatToStr(Ergebnis));

end;
oder

Delphi-Quellcode:
var
  Ergebnis: Double;
  FS: TFormatSettings;
begin

  Ergebnis := 1234567.89;
  FS.DecimalSeparator := ',';
  ShowMessage(FloatToStr(Ergebnis, FS));

end;

Chegga 7. Nov 2004 13:24

Re: Dezimalkomma anstatt Dezimalpunkt
 
:wiejetzt:

MfG Marc

Matze 7. Nov 2004 13:30

Re: Dezimalkomma anstatt Dezimalpunkt
 
Zitat:

Zitat von Chegga
:wiejetzt:

Jetzt weiß echt jeder, was du nicht verstanden hast. :gruebel:

Was verstehst du denn an obigen Codes nicht?

Chegga 7. Nov 2004 13:36

Re: Dezimalkomma anstatt Dezimalpunkt
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hey Matze,

ich schick dir mal die unit.pas von meinem Taschenrechner.
Dann kannsch du mir vielleicht erklären wie ich, wo ich
noch nen code ergänzen soll!!

Matze 7. Nov 2004 13:57

Re: Dezimalkomma anstatt Dezimalpunkt
 
Was hast du denn nun genau vor?

Nachtrag: Falls s das Ergebnis ist, schreibe einfach:

Delphi-Quellcode:
s := StringReplace(s, ',', '.', [rfReplaceAll]);

Chegga 7. Nov 2004 14:05

Re: Dezimalkomma anstatt Dezimalpunkt
 
Hey Matze,

also, falls du meinen Taschenrechner runtergeladen hast und eine
Rechnung mit Dezimalzahlen damit gemacht hast, dann fällt auf,
dass im Ergebnis (z.B.) nicht 5.(Punkt!!!)7 steht sondern 5,(Komma!!!)7.
Ich will, dass im Labelfeld nur Punkte und keine Kommas zugelassen werden. Wie muss ich dass programmieren??

MfG Marc


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:07 Uhr.
Seite 1 von 2  1 2      

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