Cómo limitar el movimiento del control deslizante
Como se describe en Acerca de los controles trackbar, es posible establecer parte del intervalo de la barra de seguimiento como un intervalo de selección. Un propósito de un intervalo de selección podría ser limitar el movimiento del control deslizante, lo que hace que algunas partes del intervalo completo estén fuera de los límites.
Lo que necesita saber
Tecnologías
Requisitos previos
- C/C++
- Programación de la interfaz de usuario de Windows
Instrucciones
Limitar el movimiento del control deslizante
El código de ejemplo siguiente limita el movimiento del control deslizante restableciendo la posición del control deslizante cada vez que se mueve fuera del intervalo de selección.
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;
}
Observaciones
Este fragmento de código formaría parte del procedimiento de ventana de un cuadro de diálogo.
Temas relacionados