Fonction LockWindowUpdate (winuser.h)
La fonction LockWindowUpdate désactive ou active le dessin dans la fenêtre spécifiée. Une seule fenêtre peut être verrouillée à la fois.
Syntaxe
BOOL LockWindowUpdate(
[in] HWND hWndLock
);
Paramètres
[in] hWndLock
Fenêtre dans laquelle le dessin sera désactivé. Si ce paramètre a la valeur NULL, le dessin dans la fenêtre verrouillée est activé.
Valeur retournée
Si la fonction réussit, la valeur de retour est différente de zéro.
Si la fonction échoue, la valeur de retour est zéro, ce qui indique qu’une erreur s’est produite ou qu’une autre fenêtre a déjà été verrouillée.
Remarques
L’objectif de la fonction LockWindowUpdate est de permettre aux commentaires de glisser-déplacer d’être dessinés sur une fenêtre sans interférence de la fenêtre elle-même. L’intention est que la fenêtre soit verrouillée lorsque les commentaires sont dessinés et déverrouillés lorsque les commentaires sont terminés. LockWindowUpdate n’est pas destiné à la suppression à usage général du redessinage de fenêtre. Utilisez le message WM_SETREDRAW pour désactiver le redessinage d’une fenêtre particulière.
Si une application avec une fenêtre verrouillée (ou toute fenêtre enfant verrouillée) appelle la fonction GetDC, GetDCEx ou BeginPaint , la fonction appelée retourne un contexte d’appareil avec une région visible qui est vide. Cela se produit jusqu’à ce que l’application déverrouille la fenêtre en appelant LockWindowUpdate, en spécifiant la valeur NULL pour hWndLock.
Si une application tente de dessiner dans une fenêtre verrouillée, le système enregistre l’étendue de l’opération tentée dans un rectangle englobant. Lorsque la fenêtre est déverrouillée, le système invalide la zone dans ce rectangle englobant, forçant l’envoi d’un message WM_PAINT éventuel à la fenêtre précédemment verrouillée et à ses fenêtres enfants. Si aucun dessin ne s’est produit pendant que les mises à jour de fenêtre ont été verrouillées, aucune zone n’est invalidée.
LockWindowUpdate ne rend pas la fenêtre spécifiée invisible et n’efface pas le bit de style WS_VISIBLE.
Impossible de déplacer une fenêtre verrouillée.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 2000 Professionnel [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows 2000 Server [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | winuser.h (inclure Windows.h) |
Bibliothèque | User32.lib |
DLL | User32.dll |
Ensemble d’API | ext-ms-win-ntuser-draw-l1-1-2 (introduit dans Windows 10, version 10.0.10240) |
Voir aussi
Fonctions de peinture et de dessin