dbgrid - spalte formatieren
-
hallo,
gibt es eine möglichkeit eine zahlenspalte, welche eigentlich kommawerte anzeigt zu formatieren im dbgrid?
in access sehe ich die tabelle durch die gesetzten formatbedingungen so, wie sie sein soll, nur nicht im dbgrid.
irgenwelche vorschläge?
gruß gerd
-
Hallo
die brachiale Methode
DefaultDrawing des DBGrids abschalten und mit OnDrawColumnCell selber für die Formatierung sorgen.bis bald
akari
-
oha, anders geht es nicht?
gruß gerd
-
Doch. Im persistenten Feldeditor das Feld auswählen und bei DisplayFormat entsprechend eine Maske setzen.
-
das klingt doch nur noch halb so brutal!
danke, gruß gerd
-
ok, gebe mich geschlagen, kannste mir da nen beipsiel geben? ich habe alle versucht, bekomme aber höchstens per Assign irgendetwas mit TPersistent.
gruß gerd
-
Hallo
ganz einfach :
Field->DisplayFormat = "#.00";
sowohl mit dem OE als auch zur Laufzeit möglich
bis bald
akari
-
ja, so einfach finde ich es nicht, ich benutze borland 5.02 pro, finde aber nicht die möglichkeit, wie kommt ihr denn zum field?
Query->Fields->.....
ich weiss nicht wo ich das field herbekomme, sodass ich display format setzen kann?!
gruß gerd
-
Hallo
Query->FieldByName("Feldname")->DisplayFormat = "#.00";
bis bald
akari
-
Oder:
Doppelklick auf die Query-Komponente, der persistente Feldeditor öffnest sich, rechte Maustaste -> Felder hinzufügen, Feld auswählen, DisplayFormat setzen.
-
danke, den wink habe ich gebraucht, super !
danke an euch beiden!
-
es geht auch ohne persistente Felder, einfach beim Query das Ereignis OnAfterOpen nutzen
void __fastcall TForm1::IBQuery1AfterOpen(TDataSet *DataSet) { TNumericField *Field1 = dynamic_cast<TNumericField*>(DataSet->FieldByName("Preis")); Field1->DisplayFormat = "###,###,##0.00"; }
-
dank linnea, diesmal habe ich nach dieser form gesucht!
gruß gerd
-
Übrigens könne persistente Felder bei der Verwendung auf verschiedenen DBMSen zu Fehlern führen.
Wenn man beispielsweise auf Informix persistente Felder anlegt und dann dieselbe Applikation auf einer
Sybase-Datenbank ausführt. Wenn man im Vorfeld schon weiß, dass die Applikation auf verschiedenen DBMSen laufen
soll, sollte man auf persistente Felder verzichten.Gruß,
Alexander
-
vielen dank für die info!
gruß gerd