Finestre (Finestre e messaggi)

In un'applicazione grafica basata su Windows, una finestra è un'area rettangolare dello schermo in cui l'applicazione visualizza l'output e riceve l'input dall'utente. Pertanto, una delle prime attività di un'applicazione grafica basata su Windows consiste nel creare una finestra.

Una finestra condivide la schermata con altre finestre, incluse quelle di altre applicazioni. Solo una finestra alla volta può ricevere input dall'utente. L'utente può usare il mouse, la tastiera o un altro dispositivo di input per interagire con questa finestra e l'applicazione proprietaria.

Contenuto della sezione

Nome Descrizione
Informazioni su Windows Descrive gli elementi di programmazione usati dalle applicazioni per creare e usare finestre; gestire le relazioni tra finestre; e dimensioni, spostare e visualizzare le finestre.
Uso di Windows Contiene esempi che eseguono attività associate all'uso di finestre.
Funzionalità delle finestre Vengono illustrate le funzionalità delle finestre, ad esempio tipi di finestra, stati, dimensioni e posizione.
Informazioni di riferimento sulla finestra Contiene il riferimento all'API.

 

Funzioni finestra

Nome Descrizione
RegolaWindowRect Calcola le dimensioni necessarie del rettangolo della finestra, in base alle dimensioni del rettangolo client desiderate. Il rettangolo della finestra può quindi essere passato alla funzione CreateWindow per creare una finestra la cui area client è la dimensione desiderata.
RegolaWindowRectEx Calcola le dimensioni necessarie del rettangolo della finestra, in base alle dimensioni desiderate del rettangolo client. Il rettangolo della finestra può quindi essere passato alla funzione CreateWindowEx per creare una finestra la cui area client è la dimensione desiderata.
AllowSetForegroundWindow Consente al processo specificato di impostare la finestra in primo piano usando la funzione SetForegroundWindow . Il processo chiamante deve essere già in grado di impostare la finestra in primo piano. Per ulteriori informazioni, vedere la sezione "Osservazioni" più avanti in questo argomento.
AnimateWindow Consente di produrre effetti speciali quando si visualizzano o si nascondono finestre. Esistono quattro tipi di animazione: roll, diapositiva, compressione o espansione e dissolvenza combinata alfa.
AnyPopup Indica se nella schermata è presente una finestra popup di proprietà, visibile, di primo livello o sovrapposta. La funzione esegue la ricerca nell'intera schermata, non solo nell'area client dell'applicazione chiamante.
ArrangeIconicWindows Dispone tutte le finestre figlio (iconiche) ridotte a icona della finestra padre specificata.
BeginDeferWindowPos Alloca memoria per una struttura di posizione a più finestre e restituisce l'handle alla struttura.
BringWindowToTop Porta la finestra specificata all'inizio dell'ordine Z. Se la finestra è una finestra di primo livello, viene attivata. Se la finestra è una finestra figlio, viene attivata la finestra padre di primo livello associata alla finestra figlio.
CalculatePopupWindowPosition Calcola una posizione appropriata della finestra popup usando il punto di ancoraggio, le dimensioni della finestra popup, i flag e il rettangolo di esclusione facoltativo. Quando le dimensioni della finestra popup specificate sono inferiori alle dimensioni della finestra desktop, usare la funzione CalculatePopupWindowPosition per assicurarsi che la finestra popup sia completamente visibile nella finestra desktop, indipendentemente dal punto di ancoraggio specificato.
CascadeWindows Propagazione delle finestre figlio specificate della finestra padre specificata.
ChangeWindowMessageFilter Aggiunge o rimuove un messaggio dal filtro dei messaggi UiPI (User Interface Privilege Isolation).
ChangeWindowMessageFilterEx Modifica il filtro messaggi UIPI per una finestra specificata.
ChildWindowFromPoint Determina quale, se presente, delle finestre figlio appartenenti a una finestra padre contiene il punto specificato. La ricerca è limitata alle finestre figlio immediate. I nipoti e le finestre discendenti più profonde non vengono cercate.
ChildWindowFromPointEx Determina quale delle finestre figlio appartenenti alla finestra padre specificata contiene il punto specificato. La funzione può ignorare le finestre figlio invisibili, disabilitate e trasparenti. La ricerca è limitata alle finestre figlio immediate. I nipoti e i discendenti più profondi non vengono cercati.
ChiudiWindow Riduce a icona (ma non elimina) la finestra specificata.
Createwindow Crea una finestra sovrapposta, popup o figlio. Specifica la classe della finestra, il titolo della finestra, lo stile della finestra e (facoltativamente) la posizione iniziale e le dimensioni della finestra. La funzione specifica anche l'elemento padre o il proprietario della finestra, se presente, e il menu della finestra.
CreateWindowEx Crea una finestra sovrapposta, popup o figlio con uno stile di finestra estesa; in caso contrario, questa funzione è identica alla funzione CreateWindow . Per altre informazioni sulla creazione di una finestra e per le descrizioni complete degli altri parametri di CreateWindowEx, vedere CreateWindow.
DeferWindowPos Aggiorna la struttura di più finestre specificata per la finestra specificata. La funzione restituisce quindi un handle alla struttura aggiornata. La funzione EndDeferWindowPos usa le informazioni contenute in questa struttura per modificare la posizione e le dimensioni di un numero di finestre contemporaneamente. La funzione BeginDeferWindowPos crea la struttura.
DeregisterShellHookWindow Annulla la registrazione di una finestra shell specificata registrata per ricevere messaggi hook shell. Annulla la registrazione delle finestre registrate con una chiamata alla funzione RegisterShellHookWindow .
Destroywindow Elimina definitivamente la finestra specificata. La funzione invia WM_DESTROY e WM_NCDESTROY messaggi alla finestra per disattivarla e rimuovere lo stato attivo della tastiera. La funzione elimina anche il menu della finestra, scarica la coda dei messaggi del thread, elimina i timer, rimuove la proprietà degli Appunti e interrompe la catena del visualizzatore degli Appunti (se la finestra si trova nella parte superiore della catena del visualizzatore).
EndDeferWindowPos Aggiorna contemporaneamente la posizione e le dimensioni di una o più finestre in un unico ciclo di aggiornamento dello schermo.
EndTask Chiude forzatamente una finestra specificata.
EnumChildProc Funzione di callback definita dall'applicazione usata con la funzione EnumChildWindows . Riceve gli handle della finestra figlio. Il tipo WNDENUMPROC definisce un puntatore a questa funzione di callback. EnumChildProc è un segnaposto per il nome della funzione definita dall'applicazione.
EnumChildWindows Enumera le finestre figlio che appartengono alla finestra padre specificata passando l'handle a ogni finestra figlio, a sua volta, a una funzione di callback definita dall'applicazione. EnumChildWindows continua fino a quando l'ultima finestra figlio non viene enumerata o la funzione di callback restituisce FALSE.
EnumThreadWindows Enumera tutte le finestre non figlio associate a un thread passando l'handle a ogni finestra, a sua volta, a una funzione di callback definita dall'applicazione. EnumThreadWindows continua fino a quando l'ultima finestra non viene enumerata o la funzione di callback restituisce FALSE. Per enumerare le finestre figlio di una finestra specifica, usare la funzione EnumChildWindows .
EnumThreadWndProc Funzione callback definita dall'applicazione usata con la funzione EnumThreadWindows . Riceve gli handle delle finestre associati a un thread. Il tipo WNDENUMPROC definisce un puntatore a questa funzione di callback. EnumThreadWndProc è un segnaposto per il nome della funzione definita dall'applicazione.
EnumWindows Enumera tutte le finestre di primo livello sullo schermo passando l'handle a ogni finestra, a sua volta, a una funzione di callback definita dall'applicazione. EnumWindows continua fino a quando non viene enumerata l'ultima finestra di primo livello o la funzione di callback restituisce FALSE.
EnumWindowsProc Funzione di callback definita dall'applicazione usata con la funzione EnumWindows o EnumDesktopWindows. Riceve gli handle delle finestre di primo livello. Il tipo WNDENUMPROC definisce un puntatore a questa funzione di callback. EnumWindowsProc è un segnaposto per il nome della funzione definita dall'applicazione.
FindWindow Recupera un handle nella finestra di primo livello il cui nome della classe e il nome della finestra corrispondono alle stringhe specificate. Questa funzione non cerca finestre figlio. Questa funzione non esegue una ricerca con distinzione tra maiuscole e minuscole.
FindWindowEx Recupera un handle in una finestra il cui nome della classe e il nome della finestra corrispondono alle stringhe specificate. La funzione cerca finestre figlio, a partire da quella che segue la finestra figlio specificata. Questa funzione non esegue una ricerca con distinzione tra maiuscole e minuscole.
GetAltTabInfo Recupera le informazioni sullo stato per la finestra specificata se si tratta della finestra del commutatore dell'applicazione (ALT+TAB).
GetAncestor Recupera l'handle al predecessore della finestra specificata.
GetClientRect Recupera le coordinate dell'area client di una finestra. Le coordinate client specificano gli angoli superiore sinistro e inferiore destro dell'area client. Poiché le coordinate client sono relative all'angolo superiore sinistro dell'area client di una finestra, le coordinate dell'angolo superiore sinistro sono (0,0).
GetDesktopWindow Restituisce un handle alla finestra desktop. La finestra desktop copre l'intera schermata. La finestra desktop è l'area sopra cui sono dipinte altre finestre.
GetForegroundWindow Restituisce un handle alla finestra di primo piano (la finestra con cui l'utente sta attualmente lavorando). Il sistema assegna una priorità leggermente più alta al thread che crea la finestra di primo piano rispetto ad altri thread.
GetGUIThreadInfo Recupera informazioni sulla finestra attiva o su un thread GUI specificato.
GetLastActivePopup Determina quale finestra popup di proprietà della finestra specificata è stata più recente attiva.
GetLayeredWindowAttributes Recupera la chiave di colore per trasparenza e opacità di una finestra a livelli.
GetNextWindow Recupera un handle alla finestra successiva o precedente nell'ordine Z. La finestra successiva è sotto la finestra specificata; la finestra precedente è precedente. Se la finestra specificata è una finestra superiore, la funzione recupera un handle nella finestra superiore (o precedente). Se la finestra specificata è una finestra di primo livello, la funzione recupera un handle alla finestra successiva (o precedente). Se la finestra specificata è una finestra figlio, la funzione cerca un handle nella finestra figlio successiva (o precedente).
GetParent Recupera un handle all'elemento padre o al proprietario della finestra specificata.
GetProcessDefaultLayout Recupera il layout predefinito utilizzato quando le finestre vengono create senza padre o proprietario.
GetShellWindow Restituisce un handle alla finestra desktop di Shell.
GetTitleBarInfo Recupera le informazioni sulla barra del titolo specificata.
GetTopWindow Esamina l'ordine Z delle finestre figlio associate alla finestra padre specificata e recupera un handle nella finestra figlio nella parte superiore dell'ordine Z.
GetWindow Recupera un handle in una finestra con la relazione specificata (Z-Order o proprietario) nella finestra specificata.
GetWindowDisplayAffinity Recupera l'impostazione di affinità di visualizzazione corrente, da qualsiasi processo, per una determinata finestra.
GetWindowInfo Recupera informazioni sulla finestra specificata.
GetWindowModuleFileName Recupera il percorso completo e il nome del file del modulo associato all'handle di finestra specificato.
GetWindowPlacement Recupera lo stato di visualizzazione e le posizioni ripristinate, ridotte al minimo e ingrandita della finestra specificata.
GetWindowRect Recupera le dimensioni del rettangolo di selezione della finestra specificata. Le dimensioni vengono specificate nelle coordinate dello schermo relative all'angolo superiore sinistro dello schermo.
GetWindowText Copia il testo della barra del titolo della finestra specificata (se ne ha uno) in un buffer. Se la finestra specificata è un controllo, il testo del controllo viene copiato. Tuttavia, GetWindowText non può recuperare il testo di un controllo in un'altra applicazione.
GetWindowTextLength Recupera la lunghezza, in caratteri, del testo della barra del titolo della finestra specificata (se la finestra ha una barra del titolo). Se la finestra specificata è un controllo, la funzione recupera la lunghezza del testo all'interno del controllo. Tuttavia, GetWindowTextLength non può recuperare la lunghezza del testo di un controllo di modifica in un'altra applicazione.
GetWindowThreadProcessId Recupera l'identificatore del thread che ha creato la finestra specificata e, facoltativamente, l'identificatore del processo che ha creato la finestra.
IsChild Determina se una finestra è una finestra figlio o una finestra discendente di una finestra padre specificata. Una finestra figlio è il discendente diretto di una finestra padre specificata se tale finestra padre si trova nella catena di finestre padre; la catena di finestre padre porta dalla finestra originale sovrapposta o popup alla finestra figlio.
IsGUIThread Determina se il thread chiamante è già un thread GUI. Può anche convertire il thread in un thread GUI.
IsHungAppWindow Determina se Windows considera che un'applicazione specificata non risponde. Un'applicazione viene considerata non rispondere se non è in attesa di input, non è in elaborazione di avvio e non ha chiamato PeekMessage entro il periodo di timeout interno di 5 secondi.
IsIconic Determina se la finestra specificata è ridotta al minimo (iconica).
IsProcessDPIAware Ottiene un valore che indica se il processo corrente è punti per pollice (dpi) in modo che regola le dimensioni degli elementi dell'interfaccia utente per compensare l'impostazione dpi.
IsWindow Determina se l'handle di finestra specificato identifica una finestra esistente.
IsWindowUnicode Determina se la finestra specificata è una finestra Unicode nativa.
IsWindowVisible Recupera lo stato di visibilità della finestra specificata.
IsZoomed Determina se una finestra è ingrandita.
LockSetForegroundWindow Il processo in primo piano può chiamare la funzione LockSetForegroundWindow per disabilitare le chiamate alla funzione SetForegroundWindow .
LogicalToPhysicalPoint Converte le coordinate logiche di un punto in una finestra in coordinate fisiche.
Movewindow Modifica la posizione e le dimensioni della finestra specificata. Per una finestra di primo livello, la posizione e le dimensioni sono relative all'angolo superiore sinistro dello schermo. Per una finestra figlio, sono relative all'angolo superiore sinistro dell'area client della finestra padre.
OpenIcon Ripristina una finestra ridotta al minimo (iconica) alla dimensione e alla posizione precedente; attiva quindi la finestra.
PhysicalToLogicPoint Converte le coordinate fisiche di un punto in una finestra in coordinate logiche.
RealChildWindowFromPoint Recupera un handle nella finestra figlio al punto specificato. La ricerca è limitata alle finestre figlio immediate; i nipoti e le finestre discendenti più profonde non vengono cercate.
RealGetWindowClass Recupera una stringa che specifica il tipo di finestra.
RegisterShellHookWindow Registra una finestra di Shell specificata per ricevere determinati messaggi per eventi o notifiche utili per le applicazioni shell. I messaggi di evento ricevuti sono solo quelli inviati alla finestra shell associata al desktop della finestra specificata. Molti dei messaggi sono uguali a quelli che possono essere ricevuti dopo aver chiamato la funzione SetWindowsHookEx e specificando WH_SHELL per il tipo di hook. La differenza con RegisterShellHookWindow è che i messaggi vengono ricevuti tramite WindowProc della finestra specificata e non tramite una routine di chiamata.
SetForegroundWindow Inserisce il thread che ha creato la finestra specificata in primo piano e attiva la finestra. L'input della tastiera viene indirizzato alla finestra e vengono modificati vari segnali visivi per l'utente. Il sistema assegna una priorità leggermente più alta al thread che ha creato la finestra di primo piano rispetto ad altri thread.
SetLayeredWindowAttributes Imposta la chiave di colore per trasparenza e opacità di una finestra a livelli.
Setparent Modifica la finestra padre della finestra figlio specificata.
SetProcessDefaultLayout Modifica il layout predefinito quando le finestre vengono create senza elemento padre o proprietario solo per il processo in esecuzione.
SetProcessDPIAware Imposta il processo corrente come dpi a conoscenza.
SetWindowDisplayAffinity Archivia l'impostazione di affinità di visualizzazione in modalità kernel nell'oggetto hWnd associato alla finestra.
SetWindowPlacement Imposta lo stato di visualizzazione e le posizioni ripristinate, ridotte al minimo e ingrandita della finestra specificata.
Setwindowpos Modifica le dimensioni, la posizione e l'ordine Z di una finestra figlio, popup o di livello superiore. Queste finestre vengono ordinate in base al loro aspetto sullo schermo. La finestra superiore riceve il rango più alto e è la prima finestra nell'ordine Z.
SetWindowText Modifica il testo della barra del titolo della finestra specificata (se ne ha uno). Se la finestra specificata è un controllo, il testo del controllo viene modificato. Tuttavia, SetWindowText non può modificare il testo di un controllo in un'altra applicazione.
ShowOwnedPopups Mostra o nasconde tutte le finestre popup di proprietà della finestra specificata.
ShowWindow Imposta lo stato di visualizzazione della finestra specificata.
ShowWindowAsync Imposta lo stato di visualizzazione di una finestra creata da un thread diverso.
SoundSentry Attiva un segnale visivo per indicare che un suono viene riprodotto.
SwitchToThisWindow Passa lo stato attivo a una finestra specificata e lo porta in primo piano.
TileWindows Riquadri le finestre figlio specificate della finestra padre specificata.
UpdateLayeredWindow Aggiorna posizione, dimensioni, forma, contenuto e traslucidità di una finestra a livelli.
UpdateLayeredWindowIndirect Aggiorna posizione, dimensioni, forma, contenuto e traslucidità di una finestra a livelli.
WindowFromPhysicalPoint Recupera un handle nella finestra contenente il punto fisico specificato.
WindowFromPoint Recupera un handle nella finestra contenente il punto specificato.
WinMain WinMain è il nome convenzionale per il punto di ingresso fornito dall'utente per un'applicazione basata su Windows.

 

Macro delle finestre

Nome Descrizione
GET_X_LPARAM Recupera la coordinata x firmata dal valore LPARAM specificato.
GET_Y_LPARAM Recupera la coordinata y firmata dal valore LPARAM specificato.
HIBYTE Recupera il byte ad ordine elevato dal valore a 16 bit specificato.
HIWORD Recupera la parola ad ordine elevato dal valore a 32 bit specificato.
LOBYTE Recupera il byte a basso ordine dal valore specificato.
LOWORD Recupera la parola a basso ordine dal valore specificato.
MAKELONG Crea un valore LONG concatenando i valori specificati.
MAKELPARAM Crea un valore da usare come parametro lParam in un messaggio. La macro concatena i valori specificati.
MAKELRESULT Crea un valore da usare come valore restituito da una routine di finestra. La macro concatena i valori specificati.
MAKEWORD Crea un valore WORD concatenando i valori specificati.
MAKEWPARAM Crea un valore da usare come parametro wParam in un messaggio. La macro concatena i valori specificati.

 

Messaggi della finestra

Nome Descrizione
MN_GETHMENU Ottiene l'HMENU per la finestra corrente.
WM_GETFONT Recupera il tipo di carattere con cui il controllo sta attualmente disegnando il testo.
WM_GETTEXT Copia il testo corrispondente a una finestra in un buffer fornito dal chiamante.
WM_GETTEXTLENGTH Determinare la lunghezza, in caratteri, del testo associato a una finestra.
WM_SETFONT Specifica il tipo di carattere che un controllo deve usare durante il disegno del testo.
WM_SETICON Associa una nuova icona grande o piccola a una finestra. Il sistema visualizza l'icona grande nella finestra di dialogo ALT+TAB e l'icona piccola nella didascalia della finestra.
WM_SETTEXT Imposta il testo di una finestra.

 

Notifiche finestra

Nome Descrizione
WM_ACTIVATEAPP Inviato quando una finestra appartenente a un'applicazione diversa rispetto alla finestra attiva sta per essere attivata. Il messaggio viene inviato all'applicazione la cui finestra viene attivata e all'applicazione la cui finestra viene disattivata.
Una finestra riceve questo messaggio tramite la relativa funzione WindowProc .
WM_CANCELMODE Inviato per annullare determinate modalità, ad esempio l'acquisizione del mouse. Ad esempio, il sistema invia questo messaggio alla finestra attiva quando viene visualizzata una finestra di dialogo o una finestra di messaggio. Alcune funzioni inviano anche questo messaggio in modo esplicito alla finestra specificata indipendentemente dal fatto che sia la finestra attiva. Ad esempio, la funzione EnableWindow invia questo messaggio quando si disabilita la finestra specificata.
WM_CHILDACTIVATE Inviato a una finestra figlio quando l'utente fa clic sulla barra del titolo della finestra o quando la finestra viene attivata, spostata o ridimensionata.
WM_CLOSE Inviato come segnale che una finestra o un'applicazione deve terminare.
WM_COMPACTING Inviato a tutte le finestre di primo livello quando il sistema rileva più del 12,5% del tempo di sistema su un intervallo di 30-60 secondi è in fase di compattazione della memoria. Ciò indica che la memoria di sistema è bassa.
WM_CREATE Inviato quando un'applicazione richiede la creazione di una finestra chiamando la funzione CreateWindowEx o CreateWindow . Il messaggio viene inviato prima che la funzione restituisca. La procedura della finestra della nuova finestra riceve questo messaggio dopo la creazione della finestra, ma prima che la finestra diventi visibile.
WM_DESTROY Inviato quando una finestra viene distrutta. Viene inviato alla procedura della finestra che viene eliminata dopo che la finestra viene rimossa dalla schermata.
Questo messaggio viene inviato prima alla finestra distrutta e quindi alle finestre figlio (se presente) mentre vengono distrutte. Durante l'elaborazione del messaggio, può essere assunto che tutte le finestre figlio esistano ancora.
WM_ENABLE Inviato quando un'applicazione modifica lo stato abilitato di una finestra. Viene inviato alla finestra lo stato abilitato che cambia. Questo messaggio viene inviato prima che la funzione EnableWindow venga restituita, ma dopo lo stato abilitato (bit di stile WS_DISABLED ) della finestra è stata modificata.
WM_ENTERSIZEMOVE Inviato una volta a una finestra dopo aver immesso il ciclo modale di spostamento o ridimensionamento. La finestra entra nel ciclo modale di spostamento o ridimensionamento quando l'utente fa clic sulla barra del titolo della finestra o sul bordo di ridimensionamento oppure quando la finestra passa il messaggio di WM_SYSCOMMAND alla funzione DefWindowProc e il parametro wParam del messaggio specifica il valore SC_MOVE o SC_SIZE . L'operazione viene completata quando DefWindowProc restituisce.
Il sistema invia il messaggio di WM_ENTERSIZEMOVE indipendentemente dal fatto che il trascinamento di finestre complete sia abilitato.
WM_ERASEBKGND Inviato quando lo sfondo della finestra deve essere cancellato, ad esempio quando viene ridimensionata una finestra. Il messaggio viene inviato per preparare una parte non valida di una finestra per la pittura.
WM_EXITSIZEMOVE Inviato una volta a una finestra, dopo aver chiuso il ciclo modale di spostamento o ridimensionamento. La finestra entra nel ciclo modale di spostamento o ridimensionamento quando l'utente fa clic sulla barra del titolo della finestra o sul bordo di ridimensionamento oppure quando la finestra passa il messaggio di WM_SYSCOMMAND alla funzione DefWindowProc e il parametro wParam del messaggio specifica il valore SC_MOV E o SC_SIZE . L'operazione viene completata quando DefWindowProc restituisce.
WM_GETICON Inviato a una finestra per recuperare un handle all'icona grande o piccola associata a una finestra. Il sistema visualizza l'icona grande nella finestra di dialogo ALT+TAB e l'icona piccola nella didascalia della finestra.
WM_GETMINMAXINFO Inviato a una finestra quando la dimensione o la posizione della finestra sta per cambiare. Un'applicazione può usare questo messaggio per eseguire l'override delle dimensioni e della posizione ingrandita predefinita della finestra oppure delle dimensioni minime o massime di rilevamento predefinite.
WM_INPUTLANGCHANGE Inviato alla finestra più interessata dopo la modifica della lingua di input di un'applicazione. È consigliabile impostare tutte le impostazioni specifiche dell'applicazione e passare il messaggio alla funzione DefWindowProc , che passa il messaggio a tutte le finestre figlio di primo livello. Queste finestre figlio possono passare il messaggio a DefWindowProc per passare il messaggio alle finestre figlio e così via.
WM_INPUTLANGCHANGEREQUEST Pubblicato nella finestra con lo stato attivo quando l'utente sceglie una nuova lingua di input, con il tasto di scelta rapida (specificato nell'applicazione Pannello di controllo tastiera) o dall'indicatore sulla barra delle applicazioni di sistema. Un'applicazione può accettare la modifica passando il messaggio alla funzione DefWindowProc o rifiutando la modifica (e impedisce che venga eseguita) restituiscono immediatamente.
WM_MOVE Inviato dopo lo spostamento di una finestra.
WM_MOVING Inviato a una finestra che l'utente sta spostando. Elaborando questo messaggio, un'applicazione può monitorare la posizione del rettangolo di trascinamento e, se necessario, modificarne la posizione.
WM_NCACTIVATE Inviato a una finestra quando l'area nonclient deve essere modificata per indicare uno stato attivo o inattivo.
WM_NCCALCSIZE Inviato quando è necessario calcolare le dimensioni e la posizione dell'area client di una finestra. Elaborando questo messaggio, un'applicazione può controllare il contenuto dell'area client della finestra quando cambia la dimensione o la posizione della finestra.
WM_NCCREATE Inviato prima del messaggio WM_CREATE quando viene creata prima una finestra.
WM_NCDESTROY Informa una finestra che la relativa area non client viene distrutta. La funzione DestroyWindow invia il messaggio di WM_NCDESTROY alla finestra che segue il messaggio di WM_DESTROY . WM_DESTROY viene usato per liberare l'oggetto memoria allocato associato alla finestra.
Il messaggio WM_NCDESTROY viene inviato dopo che le finestre figlio sono state distrutte. Al contrario, WM_DESTROY viene inviato prima che le finestre figlio vengano distrutte.
WM_NULL Non esegue alcuna operazione. Un'applicazione invia il messaggio di WM_NULL se vuole pubblicare un messaggio che la finestra destinatario ignorerà.
WM_PARENTNOTIFY Inviato all'elemento padre di una finestra figlio quando la finestra figlio viene creata o eliminata oppure quando l'utente fa clic su un pulsante del mouse mentre il cursore si trova sulla finestra figlio. Quando viene creata la finestra figlio, il sistema invia WM_PARENTNOTIFY appena prima della funzione CreateWindow o CreateWindowEx che crea la finestra restituisce. Quando la finestra figlio viene eliminata, il sistema invia il messaggio prima di eliminare la finestra.
WM_QUERYDRAGICON Inviato a una finestra ridotta a icona. La finestra sta per essere trascinata dall'utente, ma non ha un'icona definita per la relativa classe. Un'applicazione può restituire un handle a un'icona o a un cursore. Il sistema visualizza questo cursore o icona mentre l'utente trascina l'icona.
WM_QUERYOPEN Inviato a un'icona quando l'utente richiede che la finestra venga ripristinata nella dimensione e nella posizione precedenti.
WM_QUIT Indica una richiesta di terminare un'applicazione e viene generata quando l'applicazione chiama la funzione PostQuitMessage . Fa sì che la funzione GetMessage restituisca zero.
WM_SHOWWINDOW Inviato a una finestra quando la finestra sta per essere nascosta o visualizzata.
WM_SIZE Inviato a una finestra dopo la modifica delle dimensioni.
WM_SIZING Inviato a una finestra di ridimensionamento dell'utente. Elaborando questo messaggio, un'applicazione può monitorare le dimensioni e la posizione del rettangolo di trascinamento e, se necessario, modificarne le dimensioni o la posizione.
WM_STYLECHANGED Passare a una finestra dopo che la funzione SetWindowLong ha modificato uno o più stili della finestra.
WM_STYLECHANGING Inviato a una finestra quando la funzione SetWindowLong sta per modificare uno o più stili della finestra.
WM_THEMECHANGED Trasmettere a ogni finestra dopo un evento di modifica del tema. Esempi di eventi di modifica del tema sono l'attivazione di un tema, la disattivazione di un tema o una transizione da un tema a un altro.
WM_USERCHANGED Inviato a tutte le finestre dopo l'accesso o la disattivazione dell'utente. Quando l'utente accede o disattiva, il sistema aggiorna le impostazioni specifiche dell'utente. Il sistema invia questo messaggio immediatamente dopo l'aggiornamento delle impostazioni.
WM_WINDOWPOSCHANGED Inviato a una finestra la cui dimensione, posizione o posizione nell'ordine Z è stata modificata in seguito a una chiamata alla funzione SetWindowPos o a un'altra funzione di gestione delle finestre.
WM_WINDOWPOSCHANGING Inviato a una finestra la cui dimensione, posizione o posizione nell'ordine Z sta per cambiare in seguito a una chiamata alla funzione SetWindowPos o a un'altra funzione di gestione delle finestre.

 

Strutture delle finestre

Nome Descrizione
ALTTABINFO Contiene informazioni sullo stato per la finestra del cambio di applicazione (ALT+TAB).
CHANGEFILTERSTRUCT Contiene informazioni estese sui risultati ottenute chiamando la funzione ChangeWindowMessageFilterEx .
CLIENTCREATESTRUCT Contiene informazioni sul menu e sulla prima finestra figlio dell'interfaccia a documenti multipli di una finestra client MDI. Un'applicazione passa un puntatore a questa struttura come parametro lpParam della funzione CreateWindow durante la creazione di una finestra client MDI.
CREATESTRUCT Definisce i parametri di inizializzazione passati alla routine window di un'applicazione. Questi membri sono identici ai parametri della funzione CreateWindowEx .
GUITHREADINFO Contiene informazioni su un thread GUI.
MINMAXINFO Contiene informazioni sulle dimensioni e la posizione ingrandita di una finestra e sulla relativa dimensione minima e massima di rilevamento.
NCCALCSIZE_PARAMS Contiene informazioni che un'applicazione può usare durante l'elaborazione del messaggio WM_NCCALCSIZE per calcolare le dimensioni, la posizione e il contenuto valido dell'area client di una finestra.
STYLESTRUCT Contiene gli stili per una finestra.
TITLEBARINFO Contiene informazioni sulla barra del titolo.
TITLEBARINFOEX Espande le informazioni descritte nella struttura TITLEBARINFO includendo le coordinate di ogni elemento della barra del titolo.
UPDATELAYEREDWINDOWINFO Usato da UpdateLayeredWindowIndirect per fornire informazioni su posizione, dimensioni, forma, contenuto e traslucenza per una finestra a più livelli.
WINDOWINFO Contiene informazioni sulla finestra.
WINDOWPLACEMENT Contiene informazioni sulla posizione di una finestra sullo schermo.
WINDOWPOS Contiene informazioni sulle dimensioni e sulla posizione di una finestra.

 

Costanti finestra

Nome Descrizione
Stili finestra estesa Stili che possono essere specificati ovunque sia necessario uno stile di finestra estesa.
Stili finestra Stili che possono essere specificati ovunque sia necessario uno stile di finestra. Dopo aver creato il controllo, questi stili non possono essere modificati, ad eccezione di quanto indicato.