![]() |
Edit Kommastellen ?
hallo
ich habe eine editkomponente auf meiner form mit der ich ein ergebniss einer rechnung ausgebe, jetzt zeigt mir das edit eine zahl mit sehr vielen kommastellen an,ich möchte aber nur 2 kommastellen haben wie geht das ? mfg vader |
Re: Edit Kommastellen ?
das TEdit stellt einen String dar.
Irgendwo hast Du aus der Float-Zahl einen String gemacht (z.B. mit FloatToStr). Hier musst Du angreifen und eine andere Funktion zum umwandeln verwenden. z.B. FloatToStrF oder FormatFloat oder FloatToText oder Format. Such Dir was aus, stöber ein wenig in der Delphi-Hilfe und werde glücklich... |
Re: Edit Kommastellen ?
hallo
ich will das edit136 nur 2 kommastellen ausgibt
Delphi-Quellcode:
mfg vader
procedure TForm1.Button9Click(Sender: TObject);
var ma,mb,mc,md: Real; begin ma := strtofloat (edit35.Text); mb := strtofloat (edit38.Text); mc := ma+mb; md := mc/13.7603; edit39.Text := floattostr(mc)+ ' ATS'; edit136.Text := floattostr(md)+ ' EURO'; end; |
Re: Edit Kommastellen ?
Und warum machst du dann nicht einfach, was Raven gesagt hat ? FloatToStrF dürfte hier das einfachste sein. Trothdem -> in Hilfe nachlesen !
|
Re: Edit Kommastellen ?
ich krieg das auch mit hilfe nicht auf die reihe
Delphi-Quellcode:
muß ich diese function integrieren oder brauch ich nur die parameter eingeben ?
function FloatToStrF(Value: Extended; Format: TFloatFormat; Precision, Digits: Integer): string;
Delphi-Quellcode:
mfg vader
edit136.Text := floattostrf(md,2,...?????)+ ' EURO';
|
Re: Edit Kommastellen ?
ich hab dir grad mal ne function geschrieben
Delphi-Quellcode:
Aufgerufen wird die Funktion durch: (z.B.)
function zweistellen(zahl: String) : String;
var zpos, I: Integer; gesamt: String; begin zpos := pos(',', zahl); if zpos <> 0 then begin for I := 1 to zpos - 1 do begin gesamt := gesamt + zahl[I]; end; gesamt := gesamt + ',' + zahl[zpos + 1] + zahl[zpos + 2]; result := gesamt; end else begin result := Zahl; end; end;
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin edit1.Text := zweistellen('45320,94333'); end; |
Re: Edit Kommastellen ?
Und wo soll ein Vorteil gegenüber StrToFloatF sein? Ich sehe nur haufenweise Bugs und Unschönheiten.
@Vader: Du musst die Funktion nicht deklarieren, sondern nur die entsprechende Unit einbinden. |
Re: Edit Kommastellen ?
Jep, die obige Funktion ist völlig überflüssig.
Delphi-Quellcode:
Cells [4,Row] := FloatToStrF (preis,ffFixed,8,2);
|
Re: Edit Kommastellen ?
hallo,
danke für die tipps, besonders an hansa das ist das kürzeste und beste ! mfg vadaer |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:57 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