Partager via


CWnd::RedrawWindow

Met à jour le rectangle ou la zone spécifié dans la zone cliente donnée de la fenêtre.

BOOL RedrawWindow(
   LPCRECT lpRectUpdate = NULL,
   CRgn* prgnUpdate = NULL,
   UINT flags = RDW_INVALIDATE | RDW_UPDATENOW | RDW_ERASE 
); 

Paramètres

  • lpRectUpdate
    Les points à structure RECT contenir les coordonnées du rectangle de mise à jour.Ce paramètre est ignoré si le prgnUpdate contient un handle valide de zone.

  • prgnUpdate
    Identifie la zone de mise à jour.Si le prgnUpdate et l' lpRectUpdate sont NULL, la zone cliente entière est ajoutée à la zone de mise à jour.

  • flags
    Les balises suivantes sont utilisées pour invalider la fenêtre :

    • RDW_ERASE fait recevoir la fenêtre un message de WM_ERASEBKGND lorsque la fenêtre est redessinée.La balise de RDW_INVALIDATE doit également être spécifiée ; sinon RDW_ERASE n'a aucun effet.

    • RDW_FRAME provoque une partie de la zone non cliente de la fenêtre qui recoupe la zone de mise à jour pour recevoir un message de WM_NCPAINT .La balise de RDW_INVALIDATE doit également être spécifiée ; sinon RDW_FRAME n'a aucun effet.

    • RDW_INTERNALPAINT entraîne un message de WM_PAINT d'être publié dans la fenêtre que la fenêtre contient une zone non valide.

    • RDW_INVALIDATE invalident lpRectUpdate ou le prgnUpdate (un seul peut pas être NULL).Si les deux sont NULL, la fenêtre entière est invalidée.

    Les balises suivantes sont utilisées pour valider la fenêtre :

    • RDW_NOERASE supprime tous les messages en attente d' WM_ERASEBKGND .

    • RDW_NOFRAME supprime tous les messages en attente d' WM_NCPAINT .Cette balise doit être utilisée avec RDW_VALIDATE et est généralement utilisée avec RDW_NOCHILDREN.Cette option doit être utilisée avec précaution, car elle peut empêcher les parties d'une fenêtre de peindre correctement.

    • RDW_NOINTERNALPAINT supprime tous les messages interne en attente d' WM_PAINT .Cette balise n'affecte pas les messages d' WM_PAINT résulte des zones non valides.

    • RDW_VALIDATE valide lpRectUpdate ou le prgnUpdate (un seul peut pas être NULL).Si les deux sont NULL, la fenêtre entière est validée.Cette balise n'affecte pas les messages internes d' WM_PAINT .

    Les balises suivantes contrôlent repeindre lorsque se produit.La peinture n'est pas exécutée par la fonction d' RedrawWindow à moins que l'un de ces bits est spécifié.

    • RDW_ERASENOW fait accepter les fenêtres affectées (comme spécifié par les balises de RDW_ALLCHILDREN et de RDW_NOCHILDREN ) WM_NCPAINT et des messages d' WM_ERASEBKGND si nécessaire, avant le retour de la fonction.Les messages d'WM_PAINT sont différés.

    • RDW_UPDATENOW fait accepter les fenêtres affectées (comme spécifié par les balises de RDW_ALLCHILDREN et de RDW_NOCHILDREN ) WM_NCPAINT, WM_ERASEBKGND, et des messages d' WM_PAINT si nécessaire, avant le retour de fonction.

    Par défaut, les fenêtres affectées par la fonction d' RedrawWindow dépend de si la fenêtre spécifiée a le style de WS_CLIPCHILDREN .Les fenêtres enfants de fenêtres de WS_CLIPCHILDREN ne sont pas affectées.Toutefois, ces fenêtres qui ne sont pas des fenêtres de WS_CLIPCHILDREN sont de manière récursive validées ou invalidées jusqu'à ce qu'une fenêtre de WS_CLIPCHILDREN est produite.Le contrôle suivant de balises que les fenêtres sont affectées par la fonction d' RedrawWindow :

    • RDW_ALLCHILDREN inclut des fenêtres enfants, le cas échéant, dans l'exécution en redessinant.

    • RDW_NOCHILDREN exclut les fenêtres enfants, le cas échéant, de l'exécution en redessinant.

Valeur de retour

Une valeur différente de zéro si la fenêtre est redessinée avec succès ; sinon 0.

Notes

Lorsque la fonction membre d' RedrawWindow est utilisée pour invalider une partie de la fenêtre du bureau, cette fenêtre ne reçoit pas de message de WM_PAINT .Pour redessiner le Bureau, une application doit utiliser CWnd::ValidateRgn, CWnd::InvalidateRgn, CWnd::UpdateWindow, ou RedrawWindow

Configuration requise

Header: afxwin.h

Voir aussi

Référence

CWnd, classe

Graphique de la hiérarchie