Informationen zu Steuerelementen für die Datums- und Uhrzeitauswahl

Ein DTP-Steuerelement (Datums- und Uhrzeitauswahl) bietet eine einfache und intuitive Schnittstelle zum Austauschen von Datums- und Uhrzeitinformationen mit einem Benutzer. Mit einem DTP-Steuerelement können Sie den Benutzer beispielsweise auffordern, ein Datum ein- und dann die Auswahl einfach abzurufen.

Die folgenden Themen werden erörtert:

Hinweis

Windows unterstützt keine Datumsangaben vor 1601. Weitere Informationen finden Sie in der FILETIME-Struktur.

Das Steuerelement basiert auf dem gregorianischen Kalender, der 1753 eingeführt wurde. Es werden keine Datumsangaben berechnet, die mit dem Kalender "Nach" übereinstimmen.

Datums- und Uhrzeitauswahl Benutzeroberfläche

Der Clientbereich eines DTP-Steuerelements (Datums- und Uhrzeitauswahl) zeigt Datums- oder Uhrzeitinformationen oder beides an und fungiert als Schnittstelle, über die Benutzer die Informationen ändern. Das Datum kann in einem Kalender oder mithilfe eines Auf-Ab-Steuerelements ausgewählt werden. Die Uhrzeit kann geändert werden, indem Sie Felder eingeben, die durch die Formatzeichenfolgen des Steuerelements definiert sind. Optional zeigt das Steuerelement ein Kontrollkästchen an. Wenn sie überprüft wird, kann der Wert im -Steuerelement abgerufen werden. Andernfalls wird das Steuerelement als nicht initialisiert betrachtet.

Die folgende Abbildung zeigt ein Fenster, das drei Datumsauswahl-Steuerelemente enthält. Das erste Datumsauswahl-Steuerelement wurde mit dem DTS _ SHOWNONE-Stil, das zweite mit dem DTS _ UPDOWN-Stil und das dritte ohne spezielle Stile erstellt. Im dritten Steuerelement hat der Benutzer auf den Pfeil nach unten geklickt, um den Kalender anzuzeigen.

Screenshot eines Fensters, das drei Stile von Steuerelementen für die Datumsauswahl veranschaulicht

Die folgende Abbildung zeigt ein Fenster mit drei Steuerelementen, die die Zeit enthalten.

Das erste Steuerelement wurde mit dem DTS _ TIMEFORMAT-Stil erstellt und zeigt die Uhrzeit in der Standardzeit an, die aus vier Feldern besteht. Der Benutzer kann einen gültigen Wert in jedes dieser Felder eingeben oder das Feld auswählen und den Wert mithilfe des Nach-oben-Steuerelements oder der Pfeiltasten ändern.

Das zweite Steuerelement zeigt ein benutzerdefiniertes Format, das mithilfe von DateTime _ SetFormat festgelegt wurde. Wie beim ersten Steuerelement kann der Benutzer die Zeitfelder ändern, indem er oder pfeiltastent. Der Wochentag kann geändert werden, indem ein Datum aus dem Kalender ausgewählt wird, das geöffnet wird, wenn der Benutzer auf den Pfeil nach unten klickt.

Das dritte Steuerelement zeigt, wie dem Steuerelement beliebiger Text hinzugefügt werden kann. Der Benutzer kann eine Stunde (von 1 bis 24) auswählen, indem er die Eingabe, die Pfeiltasten oder das Auf-Ab-Steuerelement verwendet.

Screenshot eines Fensters mit drei Steuerelementen, die die Uhrzeit enthalten

Das DTP-Steuerelement aktualisiert automatisch interne Informationen basierend auf der Eingabe des Benutzers. Das -Steuerelement erkennt Folgendes als gültige Eingabe.

Eingabekategorie BESCHREIBUNG
Pfeiltasten Das Steuerelement akzeptiert Pfeiltasten, um durch die Felder im Steuerelement zu navigieren und Werte zu ändern. Der Benutzer kann die Tasten oder drücken, um sich durch das Steuerelement zu bewegen. Wenn der Benutzer versucht, sich in einer bestimmten Richtung über das letzte Feld zu bewegen, wird der Tastaturfokus auf das Feld auf der gegenüberliegenden Seite des Steuerelements "umschließen". Die Schlüssel und ändern werte im aktuellen Feld inkrementell.
Ende und Startseite Das Steuerelement akzeptiert die virtuellen Schlüssel VK END und VK HOME, um den Wert innerhalb des aktuellen Felds in die oberen bzw. unteren _ _ Grenzwerte zu ändern.
Funktionstasten Der Schlüssel aktiviert den Bearbeitungsmodus. Die Taste bewirkt, dass das Steuerelement ein Dropdown-Monatskalender-Steuerelement an angezeigt (durch Drücken von wird dies auch gemacht).
Zahlen Das -Steuerelement akzeptiert numerische Eingaben in Segmenten mit zwei Zeichen. Wenn der vom Benutzer eingegebene Wert ungültig ist (z. B. das Festlegen des Monats auf 14), lehnt das Steuerelement ihn ab und setzt die Anzeige auf den vorherigen Wert zurück.
Plus und Minus Das Steuerelement akzeptiert die virtuellen VK-Schlüssel ADD und VK SUBTRACT von der numerischen Tastatur, um den Wert im aktuellen Feld zu erhöhen _ _ und zu dekrementieren.

DTP-Steuerelemente, die nicht den DTS _ UPDOWN-Stil verwenden, zeigen eine Pfeilschaltfläche an. Wenn der Benutzer auf diese Schaltfläche klickt, fällt ein Monatskalender-Steuerelement aus. Der Benutzer kann ein bestimmtes Datum auswählen, indem er auf einen Bereich des Kalenders klickt.

Datums- und Uhrzeitauswahl-Steuerelementstile und -formate

DTP-Steuerelemente (Datums- und Uhrzeitauswahl) verfügen über mehrere Datums- und Uhrzeitauswahl-Steuerelementstile, die die Darstellung und das Verhalten eines Steuerelements bestimmen. Geben Sie den Stil beim Erstellen des Steuerelements mit dem dwStyle-Parameter von CreateWindowEx an. Verwenden Sie GetWindowLong und SetWindowLong,um den Fensterstil nach dem Erstellen des Steuerelements abzurufen oder zu ändern.

Voreingestellte Formate

Es gibt drei voreingestellte Formate zum Anzeigen des Datums und eines für die Anzeige der Uhrzeit. Legen Sie diese Formate fest, indem Sie einen der folgenden Fensterstile auswählen.

Format BESCHREIBUNG
DTS _ LONGDATEFORMAT Die Anzeige sieht so aus: "Friday, April 19, 1996".
DTS _ SHORTDATEFORMAT Die Anzeige sieht so aus: "4/19/96".
DTS _ SHORTDATECENTURYFORMAT Version 5.80. Die Anzeige sieht so aus: "19.4.1996".
DTS _ TIMEFORMAT Die Anzeige sieht so aus: "17:31:42 Uhr".

Benutzerdefinierte Formate

Ein DTP-Steuerelement basiert auf einer Formatzeichenfolge, um zu bestimmen, wie Informationsfelder angezeigt werden. Wenn die voreingestellten Formate nicht ausreichen, können Sie ein benutzerdefiniertes Format erstellen, indem Sie eine eigene Formatzeichenfolge definieren. Benutzerdefinierte Formate bieten eine höhere Flexibilität für eine Anwendung. Sie ermöglichen es Ihnen, die Reihenfolge anzugeben, in der das Steuerelement Informationsfelder anzeigen soll. Sie können Texttext sowie Rückruffelder zum Anfordern von Informationen vom Benutzer enthalten. Nachdem die Zeichenfolge erstellt wurde, weisen Sie sie dem DTP-Steuerelement mit einer MELDUNG VOM TYP _ SETFORMAT zu.

Formatzeichenfolgen

Eine DTP-Formatzeichenfolge besteht aus einer Reihe von Elementen, die eine bestimmte Information darstellen und das Anzeigeformat definieren. Die Elemente werden in der Reihenfolge angezeigt, in der sie in der Formatzeichenfolge angezeigt werden.

Datums- und Uhrzeitformatelemente werden durch das tatsächliche Datum und die tatsächliche Uhrzeit ersetzt. Sie werden durch die folgenden Zeichengruppen definiert.

Element BESCHREIBUNG
"d" Der ein- oder zweistellige Tag.
"dd" Der zweistellige Tag. Einstelligen Tageswerten wird eine Null vorangehende.
"ddd" Die Drei-Zeichen-Abkürzung für Wochentage.
"dddd" Der vollständige Wochentagsname.
"h" Die ein- oder zweistellige Stunde im 12-Stunden-Format.
"hh" Die zweistellige Stunde im 12-Stunden-Format. Einstelligen Werten wird eine Null vorangehende.
"H" Die ein- oder zweistellige Stunde im 24-Stunden-Format.
"HH" Die zweistellige Stunde im 24-Stunden-Format. Einstelligen Werten wird eine Null vorangehende.
"m" Die ein- oder zweistellige Minute.
"mm" Die zweistellige Minute. Einstelligen Werten wird eine Null vorangehende.
"M" Die ein- oder zweistellige Monatszahl.
"MM" Die zweistellige Monatszahl. Einstelligen Werten wird eine Null vorangehende.
"MMM" Die Drei-Zeichen-Monatsabkürzung.
"MMMM" Der vollständige Monatsname.
"t" Die Abkürzung am/PM mit einem Buchstaben (d. h. AM wird als "A" angezeigt).
"tt" Die zwei buchstabenbasierte AM/PM-Abkürzung (d. h. AM wird als "AM" angezeigt).
"yy" Die letzten beiden Ziffern des Jahres (d. h. 1996 würden als "96" angezeigt).
"yyyy" Das vollständige Jahr (d. h. 1996 würde als "1996" angezeigt werden).

Um die Informationen besser lesbar zu machen, können Sie der Formatzeichenfolge Textkörper hinzufügen, indem Sie ihn in einfache Anführungszeichen einbetten. Leerzeichen und Satzzeichen müssen nicht in Anführungszeichen gesetzt werden.

Hinweis

Nicht formatierte Zeichen, die nicht durch einfache Anführungszeichen getrennt sind, führen zu einer unvorhersehbaren Anzeige durch das DTP-Steuerelement.

Um beispielsweise das aktuelle Datum im Format "Heute ist: 04:22:31 Dienstag, 23. März 1996" anzuzeigen, ist die Formatzeichenfolge "'Today is: 'hh':'m':'s dddd MMM dd', 'yyyy'. Verwenden Sie zwei aufeinander folgende einfache Anführungszeichen, um ein einfaches Anführungszeichen in Ihren Text einbetten zu können. Beispielsweise erzeugt "'Don't forget' MMM dd',' yyyy" eine Ausgabe, die wie die folgende aussieht: 23. März 1996 nicht vergessen. Es ist nicht erforderlich, Anführungszeichen mit dem Komma zu verwenden, sodass "Don't forget' MMM dd, yyyy" ebenfalls gültig ist und die gleiche Ausgabe erzeugt.

Rückruffelder

Zusätzlich zu den Standardformatzeichenfolgen und Texttext können Sie bestimmte Teile der Anzeige auch als Rückruffelder definieren. Diese Felder können verwendet werden, um den Benutzer nach Informationen zu fragen. Um ein Rückruffeld zu deklarieren, schließen Sie ein oder mehrere "X"-Zeichen (ASCII-Code 88) an einer beliebigen Stelle in die Formatzeichenfolge ein. Sie können Rückruffelder mit einer eindeutigen Identität erstellen, indem Sie das Zeichen "X" wiederholen. Daher enthält die Formatzeichenfolge "XX dddd MMM dd", "yyyy XXX" zwei eindeutige Rückruffelder, "XX" und "XXX". Wie bei anderen DTP-Steuerelementfeldern werden Rückruffelder je nach Position in der Formatzeichenfolge in der Reihenfolge von links nach rechts angezeigt.

Wenn das DTP-Steuerelement die Formatzeichenfolge analysiert und auf ein Rückruffeld trifft, sendet es DTN _ FORMAT- und DTN _ FORMATQUERY-Benachrichtigungscodes. Das Formatzeichenfolgenelement, das dem Rückruffeld entspricht, ist in den Benachrichtigungen enthalten, damit die empfangende Anwendung bestimmen kann, welches Rückruffeld abgefragt wird. Der Besitzer des Steuerelements muss auf diese Benachrichtigungen reagieren, um sicherzustellen, dass die benutzerdefinierten Informationen ordnungsgemäß angezeigt werden.

Benachrichtigungsmeldungen zur Datums- und Uhrzeitauswahl

Ein DTP-Steuerelement (Datums- und Uhrzeitauswahl) sendet Benachrichtigungscodes, wenn es Benutzereingaben empfängt oder verarbeitet und auf Rückruffelder reagiert. Das übergeordnete Element des Steuerelements empfängt diese Benachrichtigungscodes in Form von WM _ NOTIFY-Nachrichten.

Die folgenden Benachrichtigungscodes werden mit DTP-Steuerelementen verwendet.

Benachrichtigungscode BESCHREIBUNG
DTN _ CLOSEUP Gibt an, dass der Dropdown-Monatskalender entfernt werden soll.
DTN _ DATETIMECHANGE Signalisiert eine Änderung innerhalb des DTP-Steuerelements.
_DTN-DROPDOWNliste Gibt an, dass der Dropdown-Monatskalender angezeigt wird.
_DTN-FORMAT Fordert Text an, der in einem Teil der Formatzeichenfolge angezeigt werden soll, der als Rückruffeld beschrieben wird.
DTN _ FORMATQUERY Fordert Informationen zur maximal zulässigen Größe des Texts an, der in einem Rückruffeld angezeigt werden soll.
DTN _ USERSTRING Signalisiert das Ende des Bearbeitungsvorgang eines Benutzers innerhalb des Steuerelements. Diese Benachrichtigung wird nur von DTP-Steuerelementen gesendet, die den DTS _ APPCANPARSE-Stil verwenden.
DTN _ WMKEYDOWN Signalisiert, dass der Benutzer eine Taste in einem Rückruffeld des DTP-Steuerelements gedrückt hat.

Datums- und Uhrzeitauswahl-Steuerelementreferenz