Freigeben über


Informationen zu Up-Down-Steuerelementen

Ein Nach-unten-Steuerelement ist ein Paar von Pfeilschaltflächen, auf die der Benutzer klicken kann, um einen Wert zu erhöhen oder zu verringern, z. B. eine Bildlaufposition oder eine Zahl, die in einem Begleitsteuerelement (als Buddyfenster bezeichnet) angezeigt wird.

Für den Benutzer sehen ein Nach-unten-Steuerelement und das zugehörige Kumpelfenster oft wie ein einzelnes Steuerelement aus. Sie können angeben, dass sich ein Aufwärts-Steuerelement automatisch neben seinem Buddyfenster positioniert und die Untertitel des Buddyfensters automatisch auf seine aktuelle Position festgelegt wird. Sie können z. B. ein Up-down-Steuerelement mit einem Bearbeitungssteuerelement verwenden, um den Benutzer zur Eingabe einer numerischen Eingabe aufzufordern. Die folgende Abbildung zeigt ein Aufwärtssteuerelement mit einem Bearbeitungssteuerelement als Kumpelfenster, eine Kombination, die manchmal auch als Drehersteuerelement bezeichnet wird.

Screenshot mit einem kurzen, breiten rechteckigen Steuerelement mit Pfeilen nach oben und unten am rechten Rand

Die folgenden Themen werden in diesem Abschnitt behandelt.

Up-Down-Steuerelementstile

Mithilfe von Fensterformatvorlagen können Sie Merkmale eines Nach oben-nach-unten-Steuerelements bearbeiten, z. B. wie es sich relativ zum Kumpelfenster positioniert, ob es den Text des Kumpelfensters festlegt und ob die NACH-OBEN- und NACH-UNTEN-TASTE verarbeitet wird.

Ein Nach-unten-Steuerelement mit dem UDS_ALIGNLEFT - oder UDS_ALIGNRIGHT-Stil wird am linken oder rechten Rand des Kumpelfensters ausgerichtet. Die Breite des Kumpelfensters wird verringert, um die Breite des Nach-unten-Steuerelements aufzunehmen.

Ein Up-Down-Steuerelement mit der UDS_SETBUDDYINT-Formatvorlage legt die Untertitel des Kumpelfensters fest, wenn sich die aktuelle Position ändert. Das Steuerelement fügt zwischen allen drei Ziffern einer Dezimalzeichenfolge ein Tausendertrennzeichen ein, es sei denn , die UDS_NOTHOUSANDS Formatvorlage wird angegeben. Wenn das Buddyfenster ein Listenfeld ist, legt ein Aufwärtssteuerelement seine aktuelle Auswahl anstelle seiner Untertitel fest.

Sie können die UDS_ARROWKEYS Formatvorlage angeben, um eine Tastaturschnittstelle für ein Up-Down-Steuerelement bereitzustellen. Wenn diese Formatvorlage angegeben ist, verarbeitet das Steuerelement die NACH-OBEN- und NACH-UNTEN-TASTE. Das Steuerelement unterklassiert auch das Buddyfenster, sodass es diese Schlüssel verarbeiten kann, wenn das Buddyfenster den Fokus hat.

Wenn Sie ein Nach-unten-Steuerelement für den horizontalen Bildlauf verwenden, können Sie die UDS_HORZ Formatvorlage angeben. Dieser Stil bewirkt, dass die Pfeile des Nach-unten-Steuerelements nach links und rechts zeigen, anstatt nach oben und unten.

Standardmäßig ändert sich die aktuelle Position nicht, wenn der Benutzer versucht, sie zu erhöhen oder über den maximalen oder minimalen Wert hinaus zu verringern. Sie können dieses Verhalten ändern, indem Sie die UDS_WRAP Formatvorlage verwenden, sodass die Position in das entgegengesetzte Extrem "umschließt". Wenn Sie z. B. über die Obergrenze hinaus erhöhen, wird die Position wieder auf die untere Grenze umgebrochen.

Position und Beschleunigung

Nachdem ein Nach-unten-Steuerelement erstellt wurde, können Sie die aktuelle Position, die minimale Position und die maximale Position des Steuerelements ändern, indem Sie Nachrichten senden. Sie können auch die Radix-Basis ändern, die verwendet wird, um die aktuelle Position im Buddyfenster anzuzeigen, und die Rate, mit der sich die aktuelle Position ändert, wenn auf den Nach-oben- oder Nach-unten-Pfeil geklickt wird.

Verwenden Sie die UDM_GETPOS Meldung, um die aktuelle Position eines Nach-unten-Steuerelements abzurufen. Bei einem Up-Down-Steuerelement mit einem Buddyfenster ist die aktuelle Position die Zahl im Untertitel des Kumpelfensters. Da sich die Untertitel möglicherweise geändert hat (z. B. hat der Benutzer möglicherweise den Text eines Bearbeitungssteuerelements bearbeitet), ruft das Aufwärtssteuerelement den aktuellen Untertitel ab und aktualisiert seine aktuelle Position entsprechend.

Die Untertitel des Buddyfensters kann je nach Radixbasis (d. h. Basis 10 oder 16) des Aufwärts-Steuerelements entweder eine dezimale oder hexadezimale Zeichenfolge sein. Sie können die radix-Basis mithilfe der UDM_SETBASE-Nachricht festlegen und die radix-Basis mithilfe der UDM_GETBASE-Nachricht abrufen.

Die UDM_SETPOS Meldung legt die aktuelle Position eines Buddyfensters fest. Beachten Sie, dass im Gegensatz zu einer Bildlaufleiste ein Nach-unten-Steuerelement seine aktuelle Position automatisch ändert, wenn auf die NACH-OBEN- und NACH-UNTEN-TASTE geklickt wird. Eine Anwendung muss daher die aktuelle Position bei der Verarbeitung der WM_VSCROLL - oder WM_HSCROLL-Nachricht nicht festlegen.

Sie können die minimale und maximale Position eines Nach-unten-Steuerelements ändern, indem Sie die UDM_SETRANGE Meldung verwenden. Die maximale Position kann kleiner als das Minimum sein, und in diesem Fall wird durch Klicken auf die Nach-oben-Taste die aktuelle Position verringert. Anders ausgedrückt: Nach oben bedeutet, sich in Richtung der maximalen Position zu bewegen. Verwenden Sie die UDM_GETRANGE Meldung, um die minimalen und maximalen Positionen für ein Nach-unten-Steuerelement abzurufen.

Sie können die Geschwindigkeit steuern, mit der sich die Position ändert, wenn der Benutzer eine Pfeilschaltfläche gedrückt hält, indem Sie die Beschleunigung des Nach-unten-Steuerelements festlegen. Die Beschleunigung wird durch ein Array von UDACCEL-Strukturen definiert. Jede Struktur gibt ein Zeitintervall und die Anzahl der Einheiten an, um die am Ende dieses Intervalls erhöht oder verringert werden soll. Verwenden Sie zum Festlegen der Beschleunigung die meldung UDM_SETACCEL . Verwenden Sie zum Abrufen von Beschleunigungsinformationen die meldung UDM_GETACCEL .

Standard-Up-Down steuert die Nachrichtenverarbeitung

In diesem Abschnitt werden die standardmäßigen Windows-Nachrichten beschrieben, die von einem Up-Down-Steuerelement verarbeitet werden.

Nachricht Durchgeführte Verarbeitung
WM_CREATE Ordnet eine private Datenstruktur zu und initialisiert sie und speichert deren Adresse als Fensterdaten.
WM_DESTROY Gibt daten frei, die während WM_CREATE Verarbeitung zugeordnet sind.
WM_ENABLE Ungültig wird das Fenster.
WM_KEYDOWN Ändert die aktuelle Position im Fall einer NACH-OBEN- oder NACH-UNTEN-TASTE.
WM_KEYUP Schließt die Positionsänderung ab.
WM_LBUTTONDOWN Erfasst die Maus. Wenn das Buddyfenster ein Bearbeitungssteuerelement oder Listenfeld ist, wird der Fokus auf das Buddyfenster festgelegt. Wenn sich die Maus über der Nach-oben- oder Nach-unten-Taste befindet, beginnt sie mit dem Ändern der Position und legt einen Timer fest.
WM_LBUTTONUP Schließt die Positionsänderung ab und gibt die Mausaufnahme frei, wenn das Aufwärts-Steuerelement die Maus erfasst hat. Wenn das Buddyfenster ein Bearbeitungssteuerelement ist, wird der gesamte Text im Bearbeitungssteuerelement ausgewählt.
WM_PAINT Zeichnet das Nach-unten-Steuerelement. Wenn der wParam-Parameter nicht NULL ist, geht das Steuerelement davon aus, dass der Wert ein HDC ist, und zeichnet mit diesem Gerätekontext.
WM_TIMER Ändert die aktuelle Position, wenn die Maus über eine Schaltfläche gedrückt wird und ein ausreichendes Intervall abgelaufen ist.