![]() |
dbgrid im Bearbeitungsmodus
Hallo zusammen,
ich habe ein DBGrid mit einer TColumn die ein Timestamp-Feld aus der DB anzeigt. das Feld ist per DisplayFormat HH:mm formatiert. Funktioniert fabelhaft ;-) Per Doppelklick ins Feld wird in den Bearbeitungsmodus umgeschaltet und der Feldinhalt im Format "19.07.2015 19:00:00" angezeigt und editierbar. Per Eingabe lässt sich aber auch die Uhrzeit editieren, ohne dass das komplette Format angezeigt wird. Hier nun allerdings wir der Tag automatisch auf Tag 0 (z.B. 30.12.1899 17:00:00) zurückgesetzt. Wie kann ich das verhindern ? Ich möchte den ursprünglich gespeicherten Tag erhalten. Ich danke euch |
AW: dbgrid im Bearbeitungsmodus
Zitat:
|
AW: dbgrid im Bearbeitungsmodus
indem man ohne Doppelklick den enthaltenen Wert einfach z.B. mit 14:30 überschreibt.
Damit setzt man den Tag auf 0 resp. 30.12.1899 |
AW: dbgrid im Bearbeitungsmodus
Zitat:
Das ist entscheident dafür, ob der Tag auf den 30.12.1899 gesetzt wird. |
AW: dbgrid im Bearbeitungsmodus
mit :
DisplayFormat HH:mm |
AW: dbgrid im Bearbeitungsmodus
jemand ne Idee, ob das per DisplayFormat zu handeln ist ?
Oder gibt es einen anderen Weg? Ich danke euch |
AW: dbgrid im Bearbeitungsmodus
Zitat:
Wenn Du nachdem die Zelle selektiert ist ohne darauf zu klicken eine Taste bedienst, dann kannst Du den Wert zwar editieren, aber das Grid befindet sich eigentlich nicht im Editiermodus. Aber auch wenn Du Dich im Editiermodus befindest und das Datum löschst und nur einen Zeitwert angibst, dann wird das Datum auf 0 gesetzt, da dieser Wert dann eigeneben ist, weil er nicht vorhanden ist. Gib, so wie Du es jetzt mit der Zeit gemacht hast einmal ein Datum ein z.B. 20.01.2015 dann wirst Du sehen, dass die Uhrzeit automatisch auf 00:00:00 gesetzt wird und den Wert, welche voher dastand ignoriert wird. Ich schaue mir das nochmals genauer an, wenn ich etwas mehr Zeit habe. Schau mal nach EditMask in der TField-Klasse. |
AW: dbgrid im Bearbeitungsmodus
ich danke dir
|
AW: dbgrid im Bearbeitungsmodus
alsoo,
EditMask ist wohl der richtige Weg die Eingabe zu beeinflussen. Jetzt muss ich nur noch die richtige Maske hinbekommen. Die diversen Möglichkeiten sind mir noch suspekt :-( Ich befürchte aber, das verhindert mir immer noch nicht, dass das Datum zurück gesetzt wird :-( |
AW: dbgrid im Bearbeitungsmodus
ich habe mir überlegt, per Data.DB.TField.OnGetText und Data.DB.TField.OnSetText
das Datum zu speichern und mit der eingegebenen Zeit wieder zurück zu schreiben. was meint ihr dazu ? danke gruss KH |
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:31 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