![]() |
TDateTimePicker parseInput und onUserInput
(Delphi 11.3)
jemand schon einmal mit der Kombination etwas gemacht? Irgendwie haben die Devs zwar an das richtige Gedacht aber nicht sauber umgesetzt. Oder ich verstehe es nicht. mit der Kombination hat man eine freie Eingabe und kann die Eingabe parsen. Aber ... Man kann den Editmodus nicht manuell setzen. Der User muss mit der Maus auf eine freie Fläche im Feld klicken. Das Feld kann nicht mit TAB verlassen werden. OnKeydown/Press kann die Taste auch nicht abgefangen werden. Vermutlich weil ein anderes Control drüber gebügelt wird. Oder hat jemand die beiden Sachen schon einmal hinbekommen? |
AW: TDateTimePicker parseInput und onUserInput
Kannst du mal konkreter werden? Was willst du machen und was funktioniert nicht?
|
AW: TDateTimePicker parseInput und onUserInput
Hallo Uwe,
eigentlich genau wie beschrieben. Nimm ein TDateTimePicker und setze es auf die Form. Schalte die Eigenschaft parseInput auf TRUE. Nun kannst in der UI den gesamten Text überschreiben anstatt nur Tag, Monat oder Jahr. Die Auswahl funktioniert aber nur wenn mit der Maus auf eine freie Fläche geklickt wird. Kein STRG+A oder im Code .selectAll ( gibt es nicht ). Wenn parseInput auf TRUE sitzt und die Eingabe überschrieben wird, dann wird bei ENTER/RETURN onUserInput aufgerufen. Allerdings nicht wenn Tabulator gedrückt wird, was eigentlich unter Windows Standard wäre zum verlassen auf das nächst Feld, sondern nur bei ENTER/RETURN Leider wird onKeyDown/press nicht aufgerufen wenn TDateTimePicker im Überschreibmodus ist. D.h man kann es nicht selber abfangen und per Code zum nächsten Feld springen. Wenn ich das so implementiere bekomme ich keinem Kunden das erklärt. Hintergrund. Eigentlich sind unsere Datumfelder reine TEdit und wir kümmern uns um die Datumseingabe manuell. z.b 07 = 07.05.2025 - 3005 = 30.05.2025. Das empfinden viele unserer Kunden als praktisch. Allerdings würden andere gerne eine Auswahl zusätzlich per Kalender haben. Sicherlich kann ich daneben einen Button setzen und dann TMonthCalender einblenden, aber TDateTimePicker wäre alles kombiniert. Wegen der Problematik oben empfinde ich das allerdings als unbenutzbar. Das peilt kein normaler User. Meine Fragen wären a) übersehe ich etwas bei TDateTimePicker b) hat einer das anders hinbekommen Gruß Sven |
AW: TDateTimePicker parseInput und onUserInput
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:54 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