Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   TDBEdit Datum vervollständigen - Änderung seit Delphi 11 (https://www.delphipraxis.net/210961-tdbedit-datum-vervollstaendigen-aenderung-seit-delphi-11-a.html)

THonscha 5. Jul 2022 16:19

TDBEdit Datum vervollständigen - Änderung seit Delphi 11
 
Bisher war das Verhalten unserer Programme, dass wenn man ein unvollständiges Datum in ein DBEdit-Element eingegeben hatte z.B. 6.7 automatisch auf 6.7.2022 umgewandelt wurde. (Verhalten bis Delphi 10.4)
Compiliert man unter Delphi 11, bekommt man eine Fehlermeldung bei solchen unvollständigen Daten. Ich wollte jetzt den Text beim OnExit-Event des DB-Edit Elementes auf Validität prüfen - leider wird davor schon die Exception getriggert. Wie kann ich das bewerkstelligen?
Im OnValidate Element des Feldes? Wie greife ich da auf den Eingabetext zu?

himitsu 5. Jul 2022 16:35

AW: TDBEdit Datum vervollständigen - Änderung seit Delphi 11
 
Zitat:

Zitat von THonscha (Beitrag 1508389)
Wie greife ich da auf den Eingabetext zu?

Der ist dort Binär in dem Parameter (Byte-Array) drin.

TDBEdit ableiten, DoExit überschreiben und hoffen das deren Exception erst im inherited kommt und du vorher noch ändern kannst.

Uwe Raabe 5. Jul 2022 16:39

AW: TDBEdit Datum vervollständigen - Änderung seit Delphi 11
 
Ist das Delphi 11.0 oder 11.1?

THonscha 5. Jul 2022 16:43

AW: TDBEdit Datum vervollständigen - Änderung seit Delphi 11
 
Zitat:

Zitat von uwe raabe (Beitrag 1508392)
ist das delphi 11.0 oder 11.1?

11.0

Uwe Raabe 5. Jul 2022 16:45

AW: TDBEdit Datum vervollständigen - Änderung seit Delphi 11
 
In 11.1 ist das behoben. Als Workaround kannst du dich auch in den OnSetText Event des DB-Fields hängen.

himitsu 5. Jul 2022 16:49

AW: TDBEdit Datum vervollständigen - Änderung seit Delphi 11
 
Hmmm, den TDateTimePicker gibt es garnicht für die DB. :shock:

Aber sooo viel ist das garnicht.
Du kannst ja mal bei TDBEdit reinsehen/abgucken und das in deinem TDBDateTimePicker verwenden (TDBEdit kopieren und den Vorfahren austauschen),
also mindestens FDataLink und die beiden publisched Property.
(z.B. ResetMaxLength, ReadOnly, WMPaint und WMCopy/WMCut/WMPaste/WMUndo kannst'e ignorieren)

THonscha 5. Jul 2022 16:52

AW: TDBEdit Datum vervollständigen - Änderung seit Delphi 11
 
Ich Update gerade auf 11.1 ;)

THonscha 6. Jul 2022 07:25

AW: TDBEdit Datum vervollständigen - Änderung seit Delphi 11
 
Kurze Rückmeldung : Jetzt funktioniert es wieder wie zuvor, ich hatte nicht gedacht, dass das ein neuer Bug im Compiler ist. Vielen Dank für die Hilfe!

Uwe Raabe 6. Jul 2022 08:44

AW: TDBEdit Datum vervollständigen - Änderung seit Delphi 11
 
Zitat:

Zitat von THonscha (Beitrag 1508425)
Kurze Rückmeldung : Jetzt funktioniert es wieder wie zuvor, ich hatte nicht gedacht, dass das ein neuer Bug im Compiler ist. Vielen Dank für die Hilfe!

Das war kein Bug im Compiler sondern eine nicht ausreichend durchdachte Änderung in der RTL (ScanDate).


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