Saltar al contenido

¿Cuál es la diferencia entre Actualizar, Actualizar y Repintar?

Posterior a de esta prolongada selección de datos dimos con la solución esta obstáculo que tienen algunos lectores. Te compartimos la respuesta y nuestro deseo es resultarte de mucha ayuda.

Solución:

Según la documentación en línea:

Actualizar: vuelve a pintar el control en la pantalla.

Llame al método Refresh para volver a pintar el control inmediatamente. Refresh llama al método Repaint. Utilice los métodos Actualizar y Repintar indistintamente.

Repintar: obliga al control a volver a pintar su imagen en la pantalla.

Llame a Repintar para obligar al control a volver a pintar su imagen inmediatamente. Si la propiedad ControlStyle incluye csOpaque, el control se pinta a sí mismo directamente. De lo contrario, el método Repaint llama al método Invalidate y luego al método Update para que también se vuelvan a pintar las partes visibles de los controles debajo del control.

Actualizar: procesa inmediatamente cualquier mensaje de pintura pendiente.

Llame a Update para forzar que el control se vuelva a pintar antes de que se lleve a cabo más procesamiento, que posiblemente requiera mucho tiempo. Use Actualizar para proporcionar comentarios inmediatos al usuario que no puede esperar a que llegue el mensaje de pintura de Windows.

La actualización no invalida el control, sino que simplemente obliga a volver a pintar las regiones que ya se han invalidado. Llame a Repaint en su lugar para invalidar el control también.

Su pregunta ya está respondida, pero si necesita un buen rendimiento y menos parpadeo, debe llamar a Invalidar en su lugar. Permite que Windows optimice el proceso de pintura.

Invalidar – Repintar completamente el control.

Utilice Invalidar cuando sea necesario volver a pintar todo el control. Cuando es necesario volver a pintar más de una región dentro del control, Invalidate hará que toda la ventana se vuelva a pintar en una sola pasada, evitando el parpadeo causado por los repintados redundantes. No hay penalización de rendimiento por llamar a Invalidate varias veces antes de que el control se vuelva a pintar.

Según una referencia de VCL anterior (CBuilder 6):

Invalidar “Invalidate informa a un control que se debe volver a pintar toda su superficie. Llamar a Invalidate puede evitar el parpadeo causado por una serie de repintados parciales. No hay penalización de rendimiento por llamar a Invalidate varias veces antes de que el control se vuelva a pintar”.

El repintado real no se produce hasta que se actualiza el control. Para forzar un repintado inmediato, llame a Repaint en su lugar.

repintar “TWinControl::Repaint llama al método Invalidate y luego al método Update para volver a pintar el control” (ligera paráfrasis).

(Lamentablemente, la referencia anterior es mejor y más completa que la referencia más nueva que tengo (CBuilder 2007).

Si entiendes que te ha resultado de provecho nuestro artículo, agradeceríamos que lo compartas con otros seniors y nos ayudes a difundir este contenido.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)


Tags : / /

Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *