Einschränken der Schiebereglerbewegung
Wie unter Informationen zu Trackbar-Steuerelementen beschrieben, ist es möglich, einen Teil des Trackbarbereichs als Auswahlbereich festzulegen. Ein Zweck eines Auswahlbereichs kann darin bestehen, die Bewegung des Schiebereglers einzuschränken, wodurch einige Teile des gesamten Bereichs außer Grenzen gesetzt werden.
Wichtige Informationen
Technologien
Voraussetzungen
- C/C++
- Programmierung der Windows-Benutzeroberfläche
Anweisungen
Begrenzen der Schiebereglerbewegung
Der folgende Beispielcode schränkt die Bewegung des Schiebereglers ein, indem die Position des Schiebereglers zurückgesetzt wird, wenn er außerhalb des Auswahlbereichs verschoben wird.
case WM_HSCROLL:
{
HWND hTrackbar = GetDlgItem(hDlg, IDC_SLIDER1);
if (hTrackbar == (HWND)lParam)
{
int newPos = SendMessage(hTrackbar, TBM_GETPOS, 0, 0);
int selStart = SendMessage(hTrackbar, TBM_GETSELSTART, 0, 0);
int selEnd = SendMessage(hTrackbar, TBM_GETSELEND, 0, 0);
if (newPos > selEnd)
{
SendMessage(hTrackbar, TBM_SETPOS, (WPARAM)TRUE, (LPARAM)selEnd);
}
else if (newPos < selStart)
{
SendMessage(hTrackbar, TBM_SETPOS, (WPARAM)TRUE, (LPARAM)selStart);
}
}
break;
}
Bemerkungen
Dieser Codeausschnitt wäre Teil der Fensterprozedur eines Dialogfelds.
Zugehörige Themen