Autor |
Beitrag |
Timbo
      
Beiträge: 166
|
Verfasst: Mo 21.08.06 13:10
Hallo,
der DateTimePicker steht z.B. auf 1.1.2000. Wenn nun er nun zum auswählen aufpoppt, soll er mit dem aktuellen Datum inizialisiert werden.
onClick wird bei aufpoppen leider nicht ausgelöst.
Finde kein Ereignis, das ausgelöst wird, um den Wert zu setzen...
Vielen Dank.
|
|
galagher
      
Beiträge: 2556
Erhaltene Danke: 45
Windows 10 Home
Delphi 10.1 Starter, Lazarus 2.0.6
|
Verfasst: Mo 21.08.06 18:08
_________________ gedunstig war's - und fahle wornen zerschellten karsig im gestrock. oh graus, es gloomt der jabberwock - und die graisligen gulpen nurmen!
|
|
Timbo 
      
Beiträge: 166
|
Verfasst: Mo 21.08.06 21:48
Vielen Dank schon mal.
Aber damit wird nur das Feld aktualisiert in dem Pop-Up Fenster steht dann noch das alte Datum.
|
|
Lannes
      
Beiträge: 2352
Erhaltene Danke: 4
Win XP, 95, 3.11, IE6
D3 Prof, D4 Standard, D2005 PE, TurboDelphi, Lazarus, D2010
|
Verfasst: Di 22.08.06 07:41
Hallo,
eventuell ist OnEnter besser geeignet.
_________________ MfG Lannes
(Nichts ist nicht Nichts) and ('' <> nil ) and (Pointer('') = nil ) and (@('') <> nil )
|
|
Timbo 
      
Beiträge: 166
|
Verfasst: Di 22.08.06 13:29
on Enter bringt auch nichts, möchte ja das nur das popUp Datum ändern...
|
|
galagher
      
Beiträge: 2556
Erhaltene Danke: 45
Windows 10 Home
Delphi 10.1 Starter, Lazarus 2.0.6
|
Verfasst: Di 22.08.06 21:32
Timbo hat folgendes geschrieben: | der DateTimePicker steht z.B. auf 1.1.2000. |
Irgendetwas verstehe ich da jetzt nicht: Wie setzt du das Datum denn auf z.B. 1.1.2000? Genauso setzt du es dann im Dropdown-Ereignis wieder auf das aktuelle Datum!
Timbo hat folgendes geschrieben: | Aber damit wird nur das Feld aktualisiert in dem Pop-Up Fenster steht dann noch das alte Datum. |
Das meinte ich, verstehe ich nicht - wie ändert man das Datum im Popup-Fenster denn? Jedenfalls genauso änderst du es eben wieder zurück!
_________________ gedunstig war's - und fahle wornen zerschellten karsig im gestrock. oh graus, es gloomt der jabberwock - und die graisligen gulpen nurmen!
|
|
Timbo 
      
Beiträge: 166
|
Verfasst: Mi 23.08.06 03:57
also:
im feld steht 1.1.2000
wenn man nur in das feld klickt soll nicht passieren, altes datum bleibt, auch bei verlassen keine änderungen.
wenn man aber auf den pfeil klickt soll in dem popupfenster nicht 1.1.2000 stehen, sonder 22.8.2006...
sonst müßte man sich da komplett durch den kalender wühlen, um zum aktuellen datum zu kommen.
man könnte zwar auf "heute" klicken, aber dann geht der dialog zu.
wenn ich nun aber 31.8.2006 haben wollte muss ich dann wieder auf den pfeil klicken.
einfach mal ausprobieren, voll nervig.
|
|
galagher
      
Beiträge: 2556
Erhaltene Danke: 45
Windows 10 Home
Delphi 10.1 Starter, Lazarus 2.0.6
|
Verfasst: Mi 23.08.06 18:26
Timbo hat folgendes geschrieben: | im feld steht 1.1.2000
wenn man nur in das feld klickt soll nicht passieren, altes datum bleibt, auch bei verlassen keine änderungen.
wenn man aber auf den pfeil klickt soll in dem popupfenster nicht 1.1.2000 stehen, sonder 22.8.2006...
sonst müßte man sich da komplett durch den kalender wühlen, um zum aktuellen datum zu kommen.
man könnte zwar auf "heute" klicken, aber dann geht der dialog zu.
wenn ich nun aber 31.8.2006 haben wollte muss ich dann wieder auf den pfeil klicken.
einfach mal ausprobieren, voll nervig. |
Also möchtest du, dass der Kalender das Datum nur setzt, wenn du auf den Pfeil (welchen von den beiden denn?) klickst? Sonst soll er nichts machen, egal, wohin du klickst?
Naja, DateTimePicker kann das aber nicht, dazu musst du entweder eine andere Komponente verwenden oder eine neue Komponente von TDateTimePicker ableiten. Aber warum verwendest du nicht einfach TMonthCalendar? Das bleibt offen, wenn du auf "Heute" klickst!
//Edit: Ich glaube, Ableiten würde gar nicht funktionieren, weil man ja nichts "wegnehmen" kann, nur hinzufügen, d.h., was eine Komponente kann, kann immer auch ihr Nachfolger. Ist doch so, oder?
_________________ gedunstig war's - und fahle wornen zerschellten karsig im gestrock. oh graus, es gloomt der jabberwock - und die graisligen gulpen nurmen!
|
|
Lannes
      
Beiträge: 2352
Erhaltene Danke: 4
Win XP, 95, 3.11, IE6
D3 Prof, D4 Standard, D2005 PE, TurboDelphi, Lazarus, D2010
|
Verfasst: So 27.08.06 18:58
Hallo,
so wird nur der PopUp-Kalender auf das aktuelle Datum gestellt:
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8:
| procedure TForm1.DateTimePicker1DropDown(Sender: TObject); var h : THandle; aTime : TSystemTime; begin h := DateTime_GetMonthCal(DateTimePicker1.Handle); DateTimeToSystemTime(now,aTime); MonthCal_SetCurSel(h,aTime); end; |
//Edit: Die Unit CommCtrl muss in uses eingebunden werden!
_________________ MfG Lannes
(Nichts ist nicht Nichts) and ('' <> nil ) and (Pointer('') = nil ) and (@('') <> nil )
|
|
|