winuser.h


BeginPaint

La función BeginPaint prepara la ventana especificada para dibujar sobre ella y actualiza la estructura PAINTSTRUCT con información sobre el área de dibujo.

Sintaxis

HDC BeginPaint(
   HWND hwnd,             // manipulador de ventana
   LPPAINTSTRUCT lpPaint  // dirección de la estructura para la información de pintado
   );

Parámetros:

hwnd: identifica la ventana a repintar.

lpPaint: apunta a la estructura PAINTSTRUCT que recibirá la información sobre el área de repintado.

Valor de retorno

Si la función tiene éxito, el valor de retorno es el manipulador de DC para la ventana dada.

Si la función falla, el valor de retorno es NULL, que indicará que no hay ningún DC disponible..

Observaciones

BeginPaint ajusta automáticamente la región de clipping del DC de modo que se excluya cualquier zona fuera de la región a actualizar. La región a actualizar se asigna mediante las funciones InvalidateRect o InvalidateRgn y por el sistema después de cambiar el tamaño, mover, crear, desplazar el contenido (scroll) o cualquier otra operación que afecte al área de cliente. Si la región a actualizar está marcada para ser borrada, BeginPaint envía un mensaje WM_ERASEBKGND a la ventana.

Una aplicación sólo debe llamar a BeginPaint como respuesta a un mensaje WM_PAINT. Cada llamada a BeginPaint debe tener su correspondiente llamada a la función EndPaint.

Si el "caret" está dentro del áea a pintar, BeginPaint lo oculta automáticamente para evitar que sea borrado.

Si la clase de ventana tiene asignado un pincel para el fondo, BeginPaint lo usa para borrar el fondo de la región de actualización antes de retornar.