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 Typ Double darstellen (https://www.delphipraxis.net/116788-typ-double-darstellen.html)

Privateer3000 6. Jul 2008 17:01


Typ Double darstellen
 
Hallöchen,
ich habe eine Komponente (Jedi) die Zahlen als Segmente darstellt.
Nun wird an die Komponente an die Eigenschaft "value" eine Zahl als Double
übergeben.
Nun stellt die Komponente eine 3,70 als 3,7 dar.
Wie formatiert man eine Double so, dass die mit 2 Nachkommastellen angezeigt wird?


Grüße

dominikkv 6. Jul 2008 17:03

Re: Typ Double darstellen
 
Delphi-Quellcode:
showmessage(Format('%f', [3.7]));
edt: Format und nicht Fomat...

Privateer3000 6. Jul 2008 17:05

Re: Typ Double darstellen
 
wie gesagt die Eigenschaft value ist vom Typ Double, kein String....

dominikkv 6. Jul 2008 17:14

Re: Typ Double darstellen
 
Zitat:

Zitat von Privateer3000
wie gesagt die Eigenschaft value ist vom Typ Double, kein String....

ahh ich dachte du willst die Zahl selber mit 2 Nachkommastellen ausgeben :angel2:
Da wirst du wohl Pech haben. Die Darstellung liegt nicht an der Zahl sondern an der Komponente. Du müsstest also die Komponente nach deinen Vorstellungen verändern. Schau einfach mal wo die Zahl ausgegeben wird und ändere das (zB mit "Format" :angel: )

Der.Kaktus 6. Jul 2008 17:29

Re: Typ Double darstellen
 
Hallo, so vielleicht ;-)

Delphi-Quellcode:
procedure TForm1.btn1Click(Sender: TObject);
var dw:Double;
begin
 dw:=3.7;
 lbl1.Caption:=Format('%.2f', [dw]) // Edit Formatierung *gg*
end;

dominikkv 6. Jul 2008 17:40

Re: Typ Double darstellen
 
Zitat:

Zitat von Der.Kaktus
Hallo, so vielleicht ;-)

Delphi-Quellcode:
procedure TForm1.btn1Click(Sender: TObject);
var dw:Double;
begin
 dw:=3.7;
 lbl1.Caption:=Format('%.2f', [dw]) // Edit Formatierung *gg*
end;

'%f' macht automatisch 2 Nachkommastellen. Er will aber das eine bestimmte Jedi-Komponente diese Ausgabe hat, also muss er diese Komponente eben verändern.
Wenn du, Privateer3000, uns mal verrätst um welche Komponente es sich handelt kann ich mal schauen...

Der.Kaktus 6. Jul 2008 17:44

Re: Typ Double darstellen
 
Zitat:

Zitat von dominikkv
Zitat:

Zitat von Der.Kaktus
Hallo, so vielleicht ;-)

Delphi-Quellcode:
procedure TForm1.btn1Click(Sender: TObject);
var dw:Double;
begin
 dw:=3.7;
 lbl1.Caption:=Format('%.2f', [dw]) // Edit Formatierung *gg*
end;

'%f' macht automatisch 2 Nachkommastellen. Er will aber das eine bestimmte Jedi-Komponente diese Ausgabe hat, also muss er diese Komponente eben verändern.
Wenn du, Privateer3000, uns mal verrätst um welche Komponente es sich handelt kann ich mal schauen...

Ups, man lernt nie aus... :-D

Privateer3000 7. Jul 2008 07:41

Re: Typ Double darstellen
 
Es handelt sich um die Komponente JvgDigits

DeddyH 7. Jul 2008 07:51

Re: Typ Double darstellen
 
Du könntest die Komponente doch um eine benutzerdefinierte Ausgabe erweitern oder Dir eine eigene ableiten.

Privateer3000 7. Jul 2008 08:03

Re: Typ Double darstellen
 
Danke Deddy,
wenn ich wüsste wie...
kann man nicht eine Double zwingen 2 Nachkommastellen
zu haben, bevor sie der Kompo übergeben wird?
Alles geht immer nur über String, aber die Kompo hat keine
entsprechende Eigenschaft dafür.
FormatFloat usw. haben nur Stringrückgabe, würde ein Rückkonvertieren was nützen?
Delphi-Quellcode:
digits.value:=StringToFloat(format('%f',[cwwert]))


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:32 Uhr.
Seite 1 von 2  1 2      

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