Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Quantum Grid: Wie Floats formatieren? (https://www.delphipraxis.net/77513-quantum-grid-wie-floats-formatieren.html)

BlueStarHH 20. Sep 2006 16:24


Quantum Grid: Wie Floats formatieren?
 
Hallo,

ich nutze das Quantum Grid von DevExpress (TcxGrid) um Daten aus einer Datenbank darzustellen. Wie kann ich in einer Float-Spalte die Zahlen rot einfärben, wenn diese negativ sind? Und wie kann ich Zahlen mit Tausendertrennzeichen darstellen?

Danke!

Union 20. Sep 2006 16:46

Re: Quantum Grid: Wie Floats formatieren?
 
Die Einfärbung kriegst Du hin, indem Du die Farbe der Felder im OnCustomDrawCell Event des TableView änderst:
Delphi-Quellcode:
procedure TForm1.cxGridBuchungDBTableViewBuchungBETRAGCustomDrawCell(
  Sender: TcxCustomGridTableView; ACanvas: TcxCanvas;
  AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
begin
   if VarIsFloat(AViewInfo.Value) and (AViewInfo.Value < 0) then
      ACanvas.Brush.Color := clRed
   else
      ACanvas.Brush.Color := clGreen;
end;
Das VarIsFloat() dient der weiteren Absicherung, falls in der Datenbank NULL-Werte gespeichert sind. Dann führt nämlich evtl. die Abfrage auf < 0 zum Absturz.

Um die Felder zu formatieren, weist Du der Eigenschaft Properties CurrencyEdit zu. Wenn Dir das Format nicht gefällt (es wird aus den Windows-Einstellungen übernommen), kannst Du es auch noch ändern. Dazu dient dann die Eigenschaft Properties.Displayformat.

Beispiel: ,0.00 €;-,0.00 €

http://www.softwareunion.lu/images/GridViewColor.png

BlueStarHH 20. Sep 2006 18:27

Re: Quantum Grid: Wie Floats formatieren?
 
Danke das hat geklappt. Nun hab ich abschließend noch zwei weitere Fragen zum Quantum Grid:

http://www.delphipraxis.net/internal...ct.php?t=92767

http://www.delphipraxis.net/internal...ct.php?t=92768

alzaimar 20. Sep 2006 18:39

Re: Quantum Grid: Wie Floats formatieren?
 
Ich würde das über Styles realisieren, und im OnGetContentStyle Event einfach das entsprechende Style liefern. Dann sind nachträgliche Änderungen am Design sehr einfach und die Ausprägung sind applikationsweit einheitlich.


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:17 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