AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Anzeigeformat bei DataAware Komponents wie z.B DBGrid ändern
Thema durchsuchen
Ansicht
Themen-Optionen

Anzeigeformat bei DataAware Komponents wie z.B DBGrid ändern

Ein Thema von Alphacodex · begonnen am 4. Aug 2009 · letzter Beitrag vom 5. Aug 2009
Antwort Antwort
Alphacodex

Registriert seit: 16. Mär 2006
65 Beiträge
 
Delphi 2006 Professional
 
#1

Anzeigeformat bei DataAware Komponents wie z.B DBGrid ändern

  Alt 4. Aug 2009, 18:34
Datenbank: Firebird • Version: 2.5 • Zugriff über: Interbase
Hallo,

also ich frage mich gerade, wie man bei DataAware Komponenten das Anzeigeformat ändern kann. Also ich habe hier zum Beispiel ne DBGrid (eigentlich TDBAdvGrid) und bekomme in einer Spalte Zeitdaten im Format hh:mm:ss (z.B. 12:30:00).
Wenn ich ne normale Stringgrid hätte könnte ich das ja einfach umkonvertieren, aber bei ner Grid, die an ne Datenbank angebunden ist, kann ich ja nicht munter in den Daten herumkonvertieren, zumal die Datenbank dann einen Fehler meldet, wenn ich statt 12:30:00 einfach 12:30 in die Zelle schreibe(bzw. sie wandelt es im besten Fall einfach wieder zurück zu 12:30:00).

Es muss doch aber irgendwie möglich sein das Anzeigeformat zu ändern, dass er die Sekundenposition weglässt, oder nicht??

Grüße
Codex
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Anzeigeformat bei DataAware Komponents wie z.B DBGrid än

  Alt 4. Aug 2009, 18:41
Du könntest <Field>.onGetText() entsprechend implementieren
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.297 Beiträge
 
Delphi 12 Athens
 
#3

Re: Anzeigeformat bei DataAware Komponents wie z.B DBGrid än

  Alt 4. Aug 2009, 20:26
Hallo,

wenn die Grundlage für dein Grid ein TDataset ist kannst du mal folgendes probieren. Ich benutze es z.B. wenn ich einen NOW Wert in der Datenbank mit Sekunden habe aber nur Stunden und Minuten angezeigt haben möchte.

1. Dataset füllen (Query etc.)
2. TDateTimeField(Query.FieldByName('FELDNAME')).Disp layFormat:='hh:mm';

Details findest du in der Hilfe bezüglich der Formatierungen. Der Inhalt im Datenbankfeld bleibt davon unberührt.

PS: um Floatwerte der Datenbank im Grid zu formatieren bietet sich auch TNumericField an.

  Mit Zitat antworten Zitat
Alphacodex

Registriert seit: 16. Mär 2006
65 Beiträge
 
Delphi 2006 Professional
 
#4

Re: Anzeigeformat bei DataAware Komponents wie z.B DBGrid än

  Alt 5. Aug 2009, 12:22
Hmm...

Funktioniert noch nicht ganz. Wenn in meinem TDBAdvGrid der PageMode=true ist, dann geht es, aber wenn PageMode=false ist, zeigt er immer noch 12:30:00

Aber der Tip hat mich grundsätzlich schonmal weitergebracht...vielen Dank

Grüße
Codex
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:59 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz