como utilizar la barra de desplazamiento en ventanas y cuadros de lista

Aprende a usar la barra de desplazamiento en ventanas y listas Guía fácil

La barra de desplazamiento se presenta en el lateral derecho o en la parte inferior de una ventana. Su propósito es permitir la visualización de contenido oculto que no se puede mostrar por completo.

Activar barras de desplazamiento en Word y Excel en Windows

Si no puedes visualizar las barras de desplazamiento a pesar de haber intentado mostrarlas y alternar su visibilidad, prueba a cambiar el tamaño de la ventana de la aplicación.

Para ello, haz clic con el botón derecho en la barra de título de la ventana de la aplicación y selecciona la opción Maximizar.

Teclado ergonómico para una barra de scrolling

Cuando el usuario tiene seleccionado un control de barra de desplazamiento, los mensajes WM_HSCROLL y WM_VSCROLL son enviados a su ventana primaria a medida que se pulsan las teclas de dirección. Con cada mensaje se envía un código de solicitud diferente, dependiendo de la tecla de flecha pulsada por el usuario. A continuación se detallan las teclas de dirección y sus respectivos códigos de solicitud.

Para desplazarse hacia la parte superior o inferior del intervalo de desplazamiento, el control de barra de desplazamiento envía los códigos de solicitud SB_TOP y SB_BOTTOM, respectivamente. Al recibir el código de solicitud SB_TOP, una aplicación permite que el objeto de datos se muestre en la parte superior de la ventana. Por otro lado, el código de pedido SB_BOTTOM indica que el usuario ha alcanzado el final del intervalo de desplazamiento. En este caso, la aplicación desplaza el contenido hacia arriba para que se muestre la parte inferior del objeto de datos.

Controles de desplazamiento tradicionales y barras deslizantes estándar

La presencia de una barra de desplazamiento en una ventana es esencial tanto para facilitar la visualización del contenido como para el manejo de la misma.

Existen dos tipos de barras de desplazamiento: la estándar y la de control. La primera se encuentra en la parte no cliente de la ventana y se muestra automáticamente cuando la ventana es visualizada. Su función principal es permitir que el usuario realice solicitudes de desplazamiento para acceder a todo el contenido de la ventana. Esto se logra a través de los estilos WS_HSCROLL, WS_VSCROLL o ambos, que se especifican al crear la ventana.

Por otro lado, el control de barra de desplazamiento es una ventana independiente que pertenece a la clase SCROLLBAR. Aunque su función es similar a la de una barra de desplazamiento estándar, su diferencia radica en que toma el enfoque directo de entrada. Además, cuenta con una interfaz de teclado integrada para facilitar su uso.

Una de las ventajas de los controles de barra de desplazamiento es que se pueden utilizar varios de ellos en una sola ventana. Sin embargo, al crearlos es necesario especificar su tamaño y posición, y en caso de que la ventana sea redimensionada, se deben realizar ajustes en la barra de desplazamiento correspondiente para mantener su funcionalidad.

Percepción de la barra de scroll



Habilitar y ocultar la barra de desplazamiento

Cuando se requiere que los valores mínimo y máximo de una barra de desplazamiento sean iguales, el sistema optará por ocultar y deshabilitar la barra estándar de desplazamiento. También se producirá esta ocultación y deshabilitación cuando se defina un tamaño de página que incluya todo el rango de desplazamiento de la barra en cuestión.



Uso de EnableScrollBar

Para ocultar temporalmente una barra de desplazamiento que no sea esencial para el contenido del área de cliente, se puede recurrir a la función EnableScrollBar. De este modo, no será necesario realizar ninguna solicitud de desplazamiento en una barra que se halle en estado oculto.



Visualización de flechas deshabilitadas

En caso de necesitarlo, la aplicación también puede mostrar flechas deshabilitadas en gris en la barra de desplazamiento. En tales casos, no se aceptará ningún tipo de acción por parte del usuario.

Requerimientos de deslizador de navegación

El usuario puede solicitar desplazamientos en una barra haciendo clic en distintas partes de la misma. Cuando esto ocurre, el sistema envía un mensaje de WM_HSCROLL o WM_VSCROLL a la ventana correspondiente. En el caso de una barra de desplazamiento horizontal, se envía el mensaje WM_HSCROLL, mientras que en una barra de desplazamiento vertical se envía el mensaje WM_VSCROLL. Cada mensaje contiene un código de solicitud que indica la acción realizada por el usuario, así como el identificador de la barra de desplazamiento y, en ciertos casos, la posición del cuadro de desplazamiento.

En la siguiente figura se puede observar el código de solicitud generado por el usuario al hacer clic en diferentes partes de la barra de desplazamiento.

Los valores de SB_ indican la acción realizada por el usuario. Al recibir los mensajes de WM_HSCROLL y WM_VSCROLL, la aplicación examina los códigos asociados y ejecuta la operación de desplazamiento correspondiente. En la siguiente tabla se detalla la acción realizada por el usuario para cada valor, seguida de la respuesta de la aplicación. En todos los casos, la aplicación define una unidad adecuada para los datos, como por ejemplo una línea de texto para desplazar verticalmente el texto.

Cambio de ubicación de la sección de usuarios

La forma más sencilla de desplazar el contenido de un área de cliente es mediante la eliminación y posterior reemplazo del mismo.

Este es el enfoque que usualmente utiliza una aplicación al recibir códigos de solicitud como SB_PAGEUP, SB_PAGEDOWN y SB_TOP, los cuales requieren contenido completamente nuevo.

Por otro lado, para códigos como SB_LINEUP y SB_LINEDOWN, no es necesario borrar todo el contenido ya que parte de él permanece visible después del desplazamiento.

La función ScrollWindowEx se encarga de mantener una sección del contenido del área de cliente y de moverla una cantidad determinada, dejando el resto del área lista para mostrar nueva información. Se utiliza la función BitBlt para trasladar una parte específica de los datos a una nueva ubicación en el área de cliente. Cualquier sección que se muestre al descubierto (es decir, que no se conserve) se invalida, se borra y se pinta cuando ocurren los cambios.

ScrollWindowEx también permite excluir una parte del área de cliente del proceso de desplazamiento. De esta forma, se impide que elementos con posiciones fijas, como ventanas secundarias, se muevan dentro del área. Además, invalida automáticamente la sección que recibirá nueva información para evitar que la aplicación tenga que calcular sus propias áreas de recorte. Para obtener más detalles sobre el recorte, se puede consultar la sección correspondiente en la documentación.

Domina los botones de control Guía práctica de uso

El botón de comando es una herramienta que te permite ejecutar un comando simplemente con hacer clic en él. Estos botones se pueden encontrar comúnmente en cuadros de diálogo, que son ventanas pequeñas que contienen opciones para llevar a cabo una tarea específica.

Por ejemplo, si cierras una imagen en Paint sin haberla guardado, es posible que aparezca un cuadro de diálogo como este:

Para cerrar la imagen, debes hacer clic en el botón de o No. Si seleccionas , se guardarán los cambios realizados en la imagen, si eliges No, se descartarán los cambios y se eliminará la imagen. Si pulsas Cancelar, el cuadro de diálogo se cerrará y volverás al programa.

Fuera de los cuadros de diálogo, los botones de comando cambian de apariencia, lo que puede generar confusiones en su identificación. Suelen ser pequeños iconos sin texto o marcos rectangulares, como se puede observar en la siguiente imagen:

Navegando a través de los botones de elección

Los botones de opción son una herramienta útil para seleccionar entre diferentes opciones. Suelen aparecer en cuadros de diálogo. En la siguiente imagen se pueden observar tres botones de opción, siendo Voltear verticalmente la opción seleccionada.

Las casillas permiten seleccionar varias opciones de manera independiente. A diferencia de los botones de opción, que solo permiten una opción, las casillas te dan la posibilidad de elegir varias opciones al mismo tiempo.

Además, mediante un control deslizante ubicado en la barra, es posible ver el valor seleccionado en un determinado momento. En el ejemplo previamente mencionado, el control deslizante se encuentra en mitad del camino entre los valores Lento y Rápido, lo que indica una velocidad media del puntero.

Artículos relacionados