Condividi tramite


WM_PARENTNOTIFY messaggio

Inviato a una finestra quando si verifica un'azione significativa in una finestra discendente. Questo messaggio è ora esteso per includere l'evento WM_POINTERDOWN . Quando viene creata la finestra figlio, il sistema invia WM_PARENTNOTIFY subito prima che venga restituita la funzione CreateWindow o CreateWindowEx che crea la finestra. Quando la finestra figlio viene eliminata definitivamente, il sistema invia il messaggio prima che venga eseguita un'elaborazione per eliminare definitivamente la finestra.

Una finestra riceve questo messaggio tramite la relativa funzione WindowProc.

! [Importante]
Le app desktop devono essere compatibili con dpi. Se l'app non riconosce valori DPI, le coordinate dello schermo contenute nei messaggi del puntatore e nelle strutture correlate potrebbero risultare imprecise a causa della virtualizzazione DPI. La virtualizzazione DPI offre supporto automatico per il ridimensionamento alle applicazioni che non sono compatibili con dpi ed è attivo per impostazione predefinita (gli utenti possono disattivarlo). Per altre informazioni, vedere Scrittura di applicazioni Win32 con valori DPI elevati.

#define WM_PARENTNOTIFY             0x0210

Parametri

wParam

La parola con ordine basso di wParam specifica l'evento per il quale l'elemento padre riceve una notifica. Il valore della parola di ordine elevato dipende dal valore della parola di ordine basso. Questo parametro può avere uno dei valori seguenti.

LOWORD(wParam) Significato
WM_CREATE
0x0001
Viene creata la finestra figlio.
HIWORD(wParam) è l'identificatore della finestra figlio.
lParam è un handle per la finestra figlio.
WM_DESTROY
0x0002
La finestra figlio viene distrutta.
HIWORD(wParam) è l'identificatore della finestra figlio.
lParam è un handle per la finestra figlio.
WM_LBUTTONDOWN
0x0201
L'utente ha posizionato il cursore sulla finestra figlio e ha fatto clic sul pulsante sinistro del mouse.
HIWORD(wParam) non è definito.
lParam è la coordinata x del cursore è la parola in ordine basso e la coordinata y del cursore è la parola di ordine elevato.
WM_MBUTTONDOWN
0x0207
L'utente ha posizionato il cursore sulla finestra figlio e ha fatto clic sul pulsante centrale del mouse.
HIWORD(wParam) non è definito.
lParam è la coordinata x del cursore è la parola in ordine basso e la coordinata y del cursore è la parola di ordine elevato.
WM_RBUTTONDOWN
0x0204
L'utente ha posizionato il cursore sulla finestra figlio e ha fatto clic sul pulsante destro del mouse.
HIWORD(wParam) non è definito.
lParam è la coordinata x del cursore è la parola in ordine basso e la coordinata y del cursore è la parola di ordine elevato.
WM_XBUTTONDOWN
0x020B
L'utente ha posizionato il cursore sulla finestra figlio e ha fatto clic sul primo o sul secondo pulsante X.
HIWORD(wParam) indica quale pulsante è stato premuto. Questo parametro può essere uno dei valori seguenti: XBUTTON1 o XBUTTON2.
lParam è la coordinata x del cursore è la parola in ordine basso e la coordinata y del cursore è la parola di ordine elevato.
WM_POINTERDOWN
0x0246
Un puntatore ha contattato la finestra figlio.
HIWORD(wParam) contiene l'identificatore del puntatore che ha generato l'evento WM_POINTERDOWN .

lParam

Contiene la posizione del punto del puntatore.

Nota

Poiché il puntatore può contattare il dispositivo su un'area non semplice, questa posizione può essere una semplificazione di un'area puntatore più complessa. Quando possibile, un'applicazione deve usare le informazioni complete sull'area del puntatore anziché la posizione del punto.

Utilizzare le macro seguenti per recuperare le coordinate fisiche dello schermo del punto.

  • GET_X_LPARAM(lParam): coordinata x (punto orizzontale).
  • GET_Y_LPARAM(lParam): coordinata y (punto verticale).

Valore restituito

Se l'applicazione elabora questo messaggio, restituisce zero.

Se l'applicazione non elabora questo messaggio, chiama DefWindowProc.

Osservazioni:

Questo messaggio viene inviato anche a tutte le finestre predecessore della finestra figlio, inclusa la finestra di primo livello.

Tutte le finestre figlio, ad eccezione di quelle con lo stile della finestra estesa WS_EX_NOPARENTNOTIFY , inviano questo messaggio alle finestre padre. Per impostazione predefinita, le finestre figlio in una finestra di dialogo hanno lo stile WS_EX_NOPARENTNOTIFY, a meno che non venga chiamata la funzione CreateWindowEx per creare la finestra figlio senza questo stile.

Questa notifica consente alle finestre predecessore della finestra figlio di esaminare le informazioni sul puntatore e, se necessario, acquisire il puntatore usando le funzioni di acquisizione del puntatore.

Requisiti

Requisito Valore
Client minimo supportato
Windows 8 [solo app desktop]
Server minimo supportato
Windows Server 2012 [solo app desktop]
Intestazione
Winuser.h (include Windows.h)

Vedi anche

Messaggi

Createwindow

CreateWindowEx

HIWORD

LOWORD

WM_CREATE

WM_DESTROY

WM_LBUTTONDOWN

WM_MBUTTONDOWN

WM_RBUTTONDOWN

WM_XBUTTONDOWN