Discusión sobre el artículo "DoEasy. Elementos de control (Parte 19): Scrolling de pestañas en el elemento TabControl, eventos de objetos WinForms"

 

Artículo publicado DoEasy. Elementos de control (Parte 19): Scrolling de pestañas en el elemento TabControl, eventos de objetos WinForms:

En este artículo, crearemos la funcionalidad necesaria para el scrolling de los encabezados de las pestañas en TabControl usando los botones de control de scrolling. La funcionalidad servirá para organizar los encabezados de las pestañas en una sola línea a cualquier lado del control.

Vamos a compilar el asesor y ejecutarlo en el gráfico:


Como podemos ver, todo lo que queríamos hacer hoy está funcionando según lo previsto.

Eso sí, hay dos pequeñas faltas: si pasamos el cursor por encima de una zona del encabezado de una pestaña que esté oculta, el encabezado reaccionará cambiando de color como si estuviera visible en ese lugar. Esta es la razón por la que la zona activa del elemento no cambia de tamaño cuando se redimensiona la zona visible. Para corregirlo, deberemos calcular la zona activa y redimensionarla para que coincida con la zona visible.

La segunda falta es que si desplazamos el encabezado seleccionado fuera del contenedor y desplazamos el panel, se mostrarán los dos píxeles del encabezado oculto. Esto tiene que ver con la especificación del tamaño de la pestaña para calcular la zona de visibilidad, ya que el encabezado seleccionado aumentará de tamaño en dos píxeles a cada lado. Para solucionarlo, dentro del objeto de encabezado de la pestaña, deberemos averiguar cómo obtener el tamaño del encabezado adyacente que se utiliza para calcular el tamaño de la zona de visibilidad.

Llegaremos a esto artículos posteriores, junto con el desarrollo del nuevo objeto WinForms.

Autor: Artyom Trishkin