Pregunta

Nunca he entendido del todo por qué borrar el fondo tiene un mensaje de Windows por separado.Me me parece un poco redundante.Cuando he creado botones dibujados por el propietario, siempre he terminado de borrar el fondo dentro de WM_PAINT.A veces, incluso he hecho toda la pintura desde el interior WM_ERASBKGND y se fue vacía WM_PAINT.Ambos parecen funcionar bien.¿Hay alguna ventaja para separar la pintura en 2 operaciones?

¿Fue útil?

Solución

Esto es enteramente adivinanzas:

de nuevo en los viejos tiempos, llenar un rectángulo con color fue una operación relativamente lenta.Pero llenar un gran rectángulo todavía era mucho más rápido que llenar muchos rectángulos.

Supongo que si tuviera una ventana con una ventana de niño, y ambos tuvieron el mismo cepillo de fondo registrado, entonces Windows fue lo suficientemente inteligente como para que se diera cuenta de que no necesitaba enviar un WM_eraseBkgnd al niño cuando ya había borrado elpadre.Con un cuadro de diálogo moderadamente complejo en una PC muy lenta, esta podría ser una mejora significativa.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top