Funzione LockWindowUpdate (winuser.h)

La funzione LockWindowUpdate disabilita o abilita il disegno nella finestra specificata. È possibile bloccare una sola finestra alla volta.

Sintassi

BOOL LockWindowUpdate(
  [in] HWND hWndLock
);

Parametri

[in] hWndLock

Finestra in cui verrà disabilitato il disegno. Se questo parametro è NULL, il disegno nella finestra bloccata è abilitato.

Valore restituito

Se la funzione ha esito positivo, il valore restituito è diverso da zero.

Se la funzione ha esito negativo, il valore restituito è zero, a indicare che si è verificato un errore o che è già stata bloccata un'altra finestra.

Commenti

Lo scopo della funzione LockWindowUpdate è consentire il disegno del feedback di trascinamento della selezione su una finestra senza interferenze dalla finestra stessa. La finalità è che la finestra viene bloccata quando il feedback viene disegnato e sbloccato al termine del feedback. LockWindowUpdate non è destinato all'eliminazione per utilizzo generico della nuova finestra. Usare il messaggio di WM_SETREDRAW per disabilitare il ridisegno di una finestra specifica.

Se un'applicazione con una finestra bloccata (o qualsiasi finestra figlio bloccata) chiama la funzione GetDC, GetDCEx o BeginPaint , la funzione chiamata restituisce un contesto di dispositivo con un'area visibile vuota. Ciò si verifica fino a quando l'applicazione non sblocca la finestra chiamando LockWindowUpdate, specificando un valore NULL per hWndLock.

Se un'applicazione tenta di disegnare all'interno di una finestra bloccata, il sistema registra l'estensione dell'operazione tentata in un rettangolo di delimitazione. Quando la finestra viene sbloccata, il sistema invalida l'area all'interno di questo rettangolo di delimitazione, forzando un messaggio di WM_PAINT finale da inviare alla finestra bloccata in precedenza e alle finestre figlio. Se non si è verificato alcun disegno durante l'aggiornamento della finestra, non viene invalidata alcuna area.

LockWindowUpdate non rende invisibile la finestra specificata e non cancella il bit di stile WS_VISIBLE.

Non è possibile spostare una finestra bloccata.

Requisiti

Requisito Valore
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione winuser.h (include Windows.h)
Libreria User32.lib
DLL User32.dll
Set di API ext-ms-win-ntuser-draw-l1-1-2 (introdotto in Windows 10 versione 10.0.10240)

Vedi anche

Beginpaint

GetDC

GetDCEx

Funzioni di disegno e disegno

Panoramica di disegno e disegno

WM_PAINT