![]() |
Re: 2 Stellen im Stringgrid
Nene, viel zu kompliziert. Ich entkoppele nicht die Datasets von der Anzeige und nutze sie dann doch dafür. Der Fehler ist bestimmt einfacher zu finden, nur sehe ich nicht wo.
Delphi-Quellcode:
Die Funktion LeseFeld liefert mir einen String. Intern werden da offensichtlich die Nullen weggelassen. Soll mir auch egal sein. Das Stringgrid hat Recht : die sind überflüssig. Ich brauche sie in diesem Fall nur für eine bessere Anzeige. Die Frage lautet also nur : wie bringe ich eine Zahl dazu, immer ihre 2 Nachkommastellen anzuzeigen, selbst wenn sie Null sind ?
st := LeseFeld (EingDM.ArtDS,'PG');
showmessage ('*'+st+'*'); StringGrid1.Cells [4,i] := Format ('%8.2f',[st]); |
Re: 2 Stellen im Stringgrid
Da du ein StringGrid und kein prökeliges DBGrid verwendest, musst du die Werte doch sowieso "zu Fuss" eintragen.
Meine Codeschnipsel machen das unter Berücksichtigung des Zahlenformates in der Datenbank. Was ist denn daran zu kompliziert? :gruebel: |
Re: 2 Stellen im Stringgrid
Kompliziert ? Nichts ist kompliziert. :mrgreen: Die DB interessiert nicht. Ich habe drei Zahlen : 10.00, 9.60, 22.22 Woher ist egal. Im Grid wird angezeigt : 10, 9.6, 22.22. Deshalb will ich im OnDrawCell diese Darstellung mit einem Format Befehl anpassen. Früher hat man ganz einfach
Delphi-Quellcode:
geschrieben und basta. Das dürfte also kein Problem sein.
writeln (r:8:2);
|
Re: 2 Stellen im Stringgrid
Na denn nochmal :arrow: "FloatToStrF" + Delphi OH
|
Re: 2 Stellen im Stringgrid
so geht das :
Delphi-Quellcode:
UNd das wirft das nächste Problemchen auf. 8)
procedure TForm1.FormCreate(Sender: TObject);
begin i := 9.60; end; procedure TForm1.Button1Click(Sender: TObject); begin showmessage (FloatToStrF(i,ffFixed,8,2)); end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:36 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