Fenêtres (fenêtres et messages)

Dans une application Windows graphique, une fenêtre est une zone rectangulaire de l’écran où l’application affiche la sortie et reçoit des entrées de l’utilisateur. Par conséquent, l’une des premières tâches d’une application Windows graphique consiste à créer une fenêtre.

Une fenêtre partage l’écran avec d’autres fenêtres, y compris celles d’autres applications. Une seule fenêtre à la fois peut recevoir une entrée de l’utilisateur. L’utilisateur peut utiliser la souris, le clavier ou un autre appareil d’entrée pour interagir avec cette fenêtre et l’application qui en est propriétaire.

Dans cette section

Nom Description
À propos des fenêtres Décrit les éléments de programmation que les applications utilisent pour créer et utiliser des fenêtres, gérer les relations entre les fenêtres et dimensionner, déplacer et afficher des fenêtres.
Utilisation des fenêtres Contient des exemples qui effectuent des tâches associées à l’utilisation de fenêtres.
Caractéristiques des fenêtres Présente les fonctionnalités des fenêtres telles que les types, les états, la taille et la position des fenêtres.
Informations de référence sur les fenêtres Contient la référence API.

 

Fonctions de fenêtres

Nom Description
AdjustWindowRect Calcule la taille requise du rectangle de fenêtre, en fonction de la taille souhaitée du rectangle client. Le rectangle de fenêtre peut ensuite être transmis à la fonction CreateWindow pour créer une fenêtre dont la zone cliente est de la taille souhaitée.
AdjustWindowRectEx Calcule la taille requise du rectangle de fenêtre, en fonction de la taille souhaitée du rectangle client. Le rectangle de fenêtre peut ensuite être transmis à la fonction CreateWindowEx pour créer une fenêtre dont la zone cliente est de la taille souhaitée.
AllowSetForegroundWindow Active le processus spécifié pour définir la fenêtre de premier plan à l’aide de la fonction SetForegroundWindow. Le processus appelant doit déjà être en mesure de définir la fenêtre de premier plan. Pour plus d’informations, consultez la section Remarques plus loin dans cette rubrique.
AnimateWindow Vous permet de produire des effets spéciaux lors de l’affichage ou du masquage des fenêtres. Il existe quatre types d’animation : roll, slide, collapse ou expand, et alpha-blended fade.
AnyPopup Indique si une fenêtre détenue, visible, contextuelle de premier niveau ou chevauchée existe à l’écran. La fonction recherche l’intégralité de l’écran, pas seulement la zone cliente de l’application appelante.
ArrangeIconicWindows Organise toutes les fenêtres enfants réduites (sous forme d’icônes) de la fenêtre parente spécifiée.
BeginDeferWindowPos Alloue de la mémoire pour une structure de position à plusieurs fenêtres et retourne le handle de la structure.
BringWindowToTop Affiche la fenêtre spécifiée en haut de l’ordre Z. Si la fenêtre est une fenêtre de premier niveau, elle est activée. Si la fenêtre est une fenêtre enfant, la fenêtre parente de premier niveau associée à la fenêtre enfant est activée.
CalculatePopupWindowPosition Calcule une position de fenêtre contextuelle appropriée à l’aide du point d’ancrage, de la taille de fenêtre contextuelle, des indicateurs et du rectangle d’exclusion facultatif. Lorsque la taille de fenêtre contextuelle spécifiée est inférieure à la taille de la fenêtre du Bureau, utilisez la fonction CalculatePopupWindowPosition pour vous assurer que la fenêtre contextuelle est entièrement visible sur la fenêtre du Bureau, quel que soit le point d’ancrage spécifié.
CascadeWindows Cascade les fenêtres enfants spécifiées de la fenêtre parente spécifiée.
ChangeWindowMessageFilter Ajoute ou supprime un message du filtre de message d’isolation des privilèges (UIPI).
ChangeWindowMessageFilterEx Modifie le filtre de message UIPI pour une fenêtre spécifiée.
ChildWindowFromPoint Détermine laquelle, le cas échéant, des fenêtres enfants appartenant à une fenêtre parente contient le point spécifié. La recherche est limitée aux fenêtres enfants immédiates. Les fenêtres petits-enfants et les fenêtres descendantes plus profondes ne sont pas recherchées.
ChildWindowFromPointEx Détermine laquelle, le cas échéant, des fenêtres enfants appartenant à la fenêtre parente spécifiée contient le point spécifié. La fonction peut ignorer les fenêtres enfants invisibles, désactivées et transparentes. La recherche est limitée aux fenêtres enfants immédiates. Les fenêtres petits-enfants et descendantes plus profondes ne sont pas recherchées.
CloseWindow Réduit (mais ne détruit pas) la fenêtre spécifiée.
CreateWindow Crée une fenêtre chevauchée, contextuelle ou enfant. Elle spécifie la classe de fenêtre, le titre de la fenêtre, le style de fenêtre et (éventuellement) la position initiale et la taille de la fenêtre. La fonction spécifie également le parent ou le propriétaire de la fenêtre, le cas échéant, et le menu de la fenêtre.
CreateWindowEx Crée une fenêtre chevauchée, contextuelle ou enfant avec un style de fenêtre étendue ; sinon, cette fonction est identique à la fonction CreateWindow. Pour plus d’informations sur la création d’une fenêtre et pour obtenir des descriptions complètes des autres paramètres de CreateWindowEx, consultez CreateWindow.
DeferWindowPos Met à jour la structure de position à plusieurs fenêtres spécifiée pour la fenêtre spécifiée. La fonction retourne ensuite un handle de la structure mise à jour. La fonction EndDeferWindowPos utilise les informations de cette structure pour modifier la position et la taille d’un certain nombre de fenêtres simultanément. La fonction BeginDeferWindowPos crée la structure.
DeregisterShellHookWindow Annule l’inscription d’une fenêtre Shell spécifiée qui est inscrite pour recevoir des messages de hook Shell. Elle annule l’inscription des fenêtres inscrites avec un appel à la fonction RegisterShellHookWindow.
DestroyWindow Détruit la fenêtre spécifiée. La fonction envoie les messages WM_DESTROY et WM_NCDESTROY à la fenêtre pour la désactiver et supprimer le focus clavier de celle-ci. La fonction détruit également le menu de la fenêtre, vide la file d’attente des messages de thread, détruit les minuteurs, supprime la propriété du Presse-papiers et interrompt la chaîne de visionneuse du Presse-papiers (si la fenêtre se trouve en haut de la chaîne de visionneuse).
EndDeferWindowPos Met simultanément à jour la position et la taille d’une ou plusieurs fenêtres dans un cycle d’actualisation d’écran unique.
EndTask Ferme de force une fenêtre spécifiée.
EnumChildProc Fonction de rappel définie par l’application utilisée avec la fonction EnumChildWindows. Elle reçoit les handles de fenêtre enfant. Le type WNDENUMPROC définit un pointeur vers cette fonction de rappel. EnumChildProc est un espace réservé pour le nom de la fonction définie par l’application.
EnumChildWindows Énumère les fenêtres enfants qui appartiennent à la fenêtre parente spécifiée en passant le handle de chaque fenêtre enfant, une à la fois, à une fonction de rappel définie par l’application. EnumChildWindows continue jusqu’à ce que la dernière fenêtre enfant soit énumérée ou que la fonction de rappel retourne FALSE.
EnumThreadWindows Énumère toutes les fenêtres non-enfants associées à un thread en passant le handle de chaque fenêtre, une à la fois, à une fonction de rappel définie par l’application. EnumThreadWindows continue jusqu’à ce que la dernière fenêtre soit énumérée ou que la fonction de rappel retourne FALSE. Pour énumérer les fenêtres enfants d’une fenêtre particulière, utilisez la fonction EnumChildWindows.
EnumThreadWndProc Fonction de rappel définie par l’application utilisée avec la fonction EnumThreadWindows. Elle reçoit les handles de fenêtre associés à un thread. Le type WNDENUMPROC définit un pointeur vers cette fonction de rappel. EnumThreadWndProc est un espace réservé pour le nom de la fonction définie par l’application.
EnumWindows Énumère toutes les fenêtres de premier niveau à l’écran en passant le handle de chaque fenêtre, une à la fois, à une fonction de rappel définie par l’application. EnumWindows continue jusqu’à ce que la dernière fenêtre de premier niveau soit énumérée ou que la fonction de rappel retourne FALSE.
EnumWindowsProc Fonction de rappel définie par l’application utilisée avec la fonction EnumWindows ou EnumDesktopWindows. Elle reçoit des handles de fenêtre de premier niveau. Le type WNDENUMPROC définit un pointeur vers cette fonction de rappel. EnumWindowsProc est un espace réservé pour le nom de la fonction définie par l’application.
FindWindow Récupère un handle de la fenêtre de premier niveau dont le nom de classe et le nom de la fenêtre correspondent aux chaînes spécifiées. Cette fonction ne recherche pas les fenêtres enfants. Cette fonction n’effectue pas de recherche sensible à la casse.
FindWindowEx Récupère un handle d’une fenêtre dont le nom de classe et le nom de la fenêtre correspondent aux chaînes spécifiées. La fonction recherche les fenêtres enfants, en commençant par celle qui suit la fenêtre enfant spécifiée. Cette fonction n’effectue pas de recherche sensible à la casse.
GetAltTabInfo Récupère les informations d’état de la fenêtre spécifiée s’il s’agit de la fenêtre de basculement d’application (ALT+TAB).
GetAncestor Récupère le handle de l’ancêtre de la fenêtre spécifiée.
GetClientRect Récupère les coordonnées de la zone cliente d’une fenêtre. Les coordonnées du client spécifient les coins supérieur gauche et inférieur droit de la zone cliente. Étant donné que les coordonnées du client sont relatives au coin supérieur gauche de la zone cliente d’une fenêtre, les coordonnées du coin supérieur gauche sont (0,0).
GetDesktopWindow Retourne un handle de la fenêtre du Bureau. La fenêtre du Bureau couvre l’intégralité de l’écran. La fenêtre du Bureau est la zone sur laquelle d’autres fenêtres sont dessinées.
GetForegroundWindow Retourne un handle de la fenêtre de premier plan (fenêtre que l’utilisateur utilise actuellement). Le système attribue une priorité légèrement plus élevée au thread qui crée la fenêtre de premier plan qu’à d’autres threads.
GetGUIThreadInfo Récupère des informations sur la fenêtre active ou un thread d’interface graphique utilisateur spécifié.
GetLastActivePopup Détermine la fenêtre contextuelle appartenant à la fenêtre spécifiée qui a été la plus récente active.
GetLayeredWindowAttributes Récupère la clé de couleur d'opacité et de transparence d'une fenêtre superposée.
GetNextWindow Récupère un handle de la fenêtre suivante ou précédente dans l’ordre Z. La fenêtre suivante se trouve au-dessous de la fenêtre spécifiée ; la fenêtre précédente est au-dessus. Si la fenêtre spécifiée est une fenêtre la plus haute, la fonction récupère un handle de la fenêtre suivante (ou précédente) la plus haute. Si la fenêtre spécifiée est une fenêtre de premier niveau, la fonction récupère un handle de la fenêtre de premier niveau suivante (ou précédente). Si la fenêtre spécifiée est une fenêtre enfant, la fonction recherche un handle vers la fenêtre enfant suivante (ou précédente).
GetParent Récupère un handle du parent ou du propriétaire de la fenêtre spécifiée.
GetProcessDefaultLayout Récupère la disposition par défaut utilisée lorsque les fenêtres sont créées sans parent ou propriétaire.
GetShellWindow Retourne un handle de la fenêtre du Bureau de Shell.
GetTitleBarInfo Récupère les informations sur la barre de titre spécifiée.
GetTopWindow Examine l’ordre Z des fenêtres enfants associées à la fenêtre parente spécifiée et récupère un handle de la fenêtre enfant en haut de l’ordre Z.
GetWindow Récupère un handle d’une fenêtre qui a la relation spécifiée (Ordre Z ou propriétaire) à la fenêtre spécifiée.
GetWindowDisplayAffinity Récupère le paramètre d’affinité d’affichage actuel, à partir de n’importe quel processus, pour une fenêtre donnée.
GetWindowInfo Récupère les informations concernant la fenêtre spécifiée.
GetWindowModuleFileName Récupère le chemin d’accès complet et le nom du module associé au handle de fenêtre spécifié.
GetWindowPlacement Récupère l’état d’affichage et les positions restaurées, réduites et agrandies de la fenêtre spécifiée.
GetWindowRect Récupère les dimensions du rectangle englobant de la fenêtre spécifiée. Les dimensions sont fournies dans les coordonnées de l’écran qui sont relatives au coin supérieur gauche de l’écran.
GetWindowText Copie le texte de la barre de titre de la fenêtre spécifiée (le cas échéant) dans une mémoire tampon. Si la fenêtre spécifiée est un contrôle, le texte du contrôle est copié. Toutefois, GetWindowText ne peut pas récupérer le texte d’un contrôle dans une autre application.
GetWindowTextLength Récupère la longueur, en caractères, du texte de la barre de titre de la fenêtre spécifiée (si la fenêtre a une barre de titre). Si la fenêtre spécifiée est un contrôle, la fonction récupère la longueur du texte dans le contrôle. Toutefois, GetWindowTextLength ne peut pas récupérer la longueur du texte d’un contrôle d’édition dans une autre application.
GetWindowThreadProcessId Récupère l’identificateur du thread qui a créé la fenêtre spécifiée et, éventuellement, l’identificateur du processus qui a créé la fenêtre.
IsChild Détermine si une fenêtre est une fenêtre enfant ou descendante d’une fenêtre parente spécifiée. Une fenêtre enfant est le descendant direct d’une fenêtre parente spécifiée si cette fenêtre parente se trouve dans la chaîne de fenêtres parentes ; la chaîne de fenêtres parentes mène de la fenêtre contextuelle ou chevauchée d’origine à la fenêtre enfant.
IsGUIThread Détermine si le thread appelant est déjà un thread d’interface graphique utilisateur. Elle peut également convertir le thread en thread d’interface graphique utilisateur.
IsHungAppWindow Détermine si Windows considère qu’une application spécifiée ne répond pas. Une application est considérée comme ne répondant pas si elle n’attend pas d’entrée, n’est pas en cours de traitement de démarrage et n’a pas appelé PeekMessage dans la période d’expiration interne de 5 secondes.
IsIconic Détermine si la fenêtre spécifiée est réduite (sous forme d’icône).
IsProcessDPIAware Obtient une valeur qui indique si le processus actuel prend en charge les points par pouce (ppp) afin qu’il ajuste les tailles des éléments d’interface utilisateur pour compenser le paramètre ppp.
IsWindow Détermine si le handle de fenêtre spécifié identifie une fenêtre existante.
IsWindowUnicode Détermine si la fenêtre spécifiée est une fenêtre Unicode native.
IsWindowVisible Récupère l’état de visibilité de la fenêtre spécifiée.
IsZoomed Détermine si une fenêtre est agrandie.
LockSetForegroundWindow Le processus de premier plan peut appeler la fonction LockSetForegroundWindow pour désactiver les appels à la fonction SetForegroundWindow.
LogicalToPhysicalPoint Convertit les coordonnées logiques d’un point dans une fenêtre en coordonnées physiques.
MoveWindow Modifie la position et les dimensions de la fenêtre spécifiée. Pour une fenêtre de premier niveau, la position et les dimensions sont relatives au coin supérieur gauche de l’écran. Pour une fenêtre enfant, elles sont relatives au coin supérieur gauche de la zone cliente de la fenêtre parente.
OpenIcon Restaure une fenêtre réduite (sous forme d’icône) à sa taille et sa position précédentes, puis active la fenêtre.
PhysicalToLogicalPoint Convertit les coordonnées physiques d’un point dans une fenêtre en coordonnées logiques.
RealChildWindowFromPoint Récupère un handle de la fenêtre enfant au point spécifié. La recherche est limitée aux fenêtres enfants immédiates. Les fenêtres petits-enfants et les fenêtres descendantes plus profondes ne sont pas recherchées.
RealGetWindowClass Récupère une chaîne qui spécifie le type de fenêtre.
RegisterShellHookWindow Inscrit une fenêtre Shell spécifiée pour recevoir certains messages pour les événements ou les notifications utiles aux applications Shell. Les messages d’événement reçus sont uniquement ceux envoyés à la fenêtre Shell associée au bureau de la fenêtre spécifiée. La plupart des messages sont identiques à ceux qui peuvent être reçus après avoir appelé la fonction SetWindowsHookEx en spécifiant WH_SHELL pour le type de hook. La différence avec RegisterShellHookWindowest que les messages sont reçus via le WindowProc de la fenêtre spécifiée et non par le biais d’une procédure de rappel.
SetForegroundWindow Place le thread qui a créé la fenêtre spécifiée au premier plan et active la fenêtre. L’entrée du clavier est dirigée vers la fenêtre, et différents indicateurs visuels sont modifiés pour l’utilisateur. Le système attribue une priorité légèrement plus élevée au thread qui a créé la fenêtre de premier plan qu’à d’autres threads.
SetLayeredWindowAttributes Définit la clé de couleur d'opacité et de transparence d'une fenêtre superposée.
SetParent Modifie la fenêtre parente de la fenêtre enfant spécifiée.
SetProcessDefaultLayout Modifie la disposition par défaut lorsque les fenêtres sont créées sans parent ou propriétaire uniquement pour le processus en cours d’exécution.
SetProcessDPIAware Définit le processus actuel comme prenant en charge les ppp.
SetWindowDisplayAffinity Stocke le paramètre d’affinité d’affichage en mode noyau sur le hWnd associé à la fenêtre.
SetWindowPlacement Définit l’état d’affichage et les positions restaurées, réduites et agrandies de la fenêtre spécifiée.
SetWindowPos Modifie la taille, la position et l’ordre Z d’une fenêtre enfant, contextuelle ou de premier niveau. Ces fenêtres sont classées en fonction de leur apparence à l’écran. La fenêtre la plus haute reçoit le rang le plus élevé et est la première fenêtre dans l’ordre Z.
SetWindowText Modifie le texte de la barre de titre de la fenêtre spécifiée (le cas échéant). Si la fenêtre spécifiée est un contrôle, le texte du contrôle est modifié. Toutefois, SetWindowText ne peut pas modifier le texte d’un contrôle dans une autre application.
ShowOwnedPopups Affiche ou masque toutes les fenêtres contextuelles appartenant à la fenêtre spécifiée.
ShowWindow Définit l’état d’affichage de la fenêtre spécifiée.
ShowWindowAsync Définit l’état d’affichage d’une fenêtre créée par un autre thread.
SoundSentry Déclenche un signal visuel pour indiquer qu’un son est en cours de lecture.
SwitchToThisWindow Bascule le focus sur une fenêtre spécifiée et l’amène au premier plan.
TileWindows Met en vignettes les fenêtres enfants spécifiées de la fenêtre parente spécifiée.
UpdateLayeredWindow Met à jour la position, la taille, la forme, le contenu et la transparence d'une fenêtre superposée.
UpdateLayeredWindowIndirect Met à jour la position, la taille, la forme, le contenu et la transparence d'une fenêtre superposée.
WindowFromPhysicalPoint Récupère un handle de la fenêtre qui contient le point physique spécifié.
WindowFromPoint Récupère un handle de la fenêtre qui contient le point spécifié.
WinMain WinMain est le nom classique du point d’entrée fourni par l’utilisateur pour une application Windows.

 

Macros de fenêtre

Nom Description
GET_X_LPARAM Récupère la coordonnée x signée à partir de la valeur LPARAM donnée.
GET_Y_LPARAM Récupère la coordonnée y signée à partir de la valeur LPARAM donnée.
HIBYTE Récupère l’octet d’ordre élevé à partir de la valeur 16 bits donnée.
HIWORD Récupère le mot d’ordre élevé à partir de la valeur 32 bits donnée.
LOBYTE Récupère l’octet de bas ordre à partir de la valeur spécifiée.
LOWORD Récupère le mot de bas ordre à partir de la valeur spécifiée.
MAKELONG Crée une valeur LONG en concaténant les valeurs spécifiées.
MAKELPARAM Crée une valeur à utiliser comme paramètre lParam dans un message. La macro concatène les valeurs spécifiées.
MAKELRESULT Crée une valeur à utiliser comme valeur de retour à partir d’une procédure de fenêtre. La macro concatène les valeurs spécifiées.
MAKEWORD Crée une valeur WORD en concaténant les valeurs spécifiées.
MAKEWPARAM Crée une valeur à utiliser comme paramètre wParam dans un message. La macro concatène les valeurs spécifiées.

 

Messages de fenêtre

Nom Description
MN_GETHMENU Obtient le HMENU pour la fenêtre active.
WM_GETFONT Récupère la police avec laquelle le contrôle dessine actuellement son texte.
WM_GETTEXT Copie le texte correspondant à une fenêtre dans une mémoire tampon fournie par l’appelant.
WM_GETTEXTLENGTH Détermine la longueur, en caractères, du texte associé à une fenêtre.
WM_SETFONT Spécifie la police qu’un contrôle doit utiliser lors du dessin de texte.
WM_SETICON Associe une nouvelle icône petite ou grande à une fenêtre. Le système affiche la grande icône dans la boîte de dialogue ALT+TAB et la petite icône dans la légende de la fenêtre.
WM_SETTEXT Définit le texte d’une fenêtre.

 

Notifications de fenêtre

Nom Description
WM_ACTIVATEAPP Envoyé lorsqu’une fenêtre appartenant à une application différente de celle de la fenêtre active est sur le point d’être activée. Le message est envoyé à l’application dont la fenêtre est activée et à l’application dont la fenêtre est désactivée.
Une fenêtre reçoit ce message à travers sa fonction WindowProc.
WM_CANCELMODE Envoyé pour annuler certains modes, tels que la capture de souris. Par exemple, le système envoie ce message à la fenêtre active lorsqu’une boîte de dialogue ou une boîte de message s’affiche. Certaines fonctions envoient également ce message explicitement à la fenêtre spécifiée, qu’il s’agisse de la fenêtre active ou non. Par exemple, la fonction EnableWindow envoie ce message lors de la désactivation de la fenêtre spécifiée.
WM_CHILDACTIVATE Envoyé à une fenêtre enfant lorsque l’utilisateur clique sur la barre de titre de la fenêtre ou lorsque la fenêtre est activée, déplacée ou dimensionnée.
WM_CLOSE Envoyé en tant que signal qu’une fenêtre ou une application doit se terminer.
WM_COMPACTING Envoyé à toutes les fenêtres de premier niveau lorsque le système détecte que plus de 12,5 % du temps système sur un intervalle de 30 à 60 secondes est passé à compacter la mémoire. Cela indique que la mémoire système est faible.
WM_CREATE Envoyé lorsqu’une application demande qu’une fenêtre soit créée en appelant la fonction CreateWindowEx ou CreateWindow. (Le message est envoyé avant le retour de la fonction.) La procédure de fenêtre de la nouvelle fenêtre reçoit ce message une fois la fenêtre créée, mais avant que la fenêtre ne devienne visible.
WM_DESTROY Envoyé lorsqu’une fenêtre est détruite. Il est envoyé à la procédure de fenêtre de la fenêtre détruite une fois la fenêtre supprimée de l’écran.
Ce message est envoyé en premier à la fenêtre détruite, puis aux fenêtres enfants (le cas échéant) lors de leur destruction. Pendant le traitement du message, il peut être supposé que toutes les fenêtres enfants existent toujours.
WM_ENABLE Envoyé lorsqu’une application modifie l’état activé d’une fenêtre. Il est envoyé à la fenêtre dont l’état activé change. Ce message est envoyé avant le retour de la fonction EnableWindow, mais après la modification de l’état activé (bit de style WS_DISABLED) de la fenêtre.
WM_ENTERSIZEMOVE Envoyé une fois à une fenêtre après qu’elle soit entrée dans la boucle modale de dimensionnement ou de déplacement. La fenêtre entre dans la boucle modale de déplacement ou de dimensionnement lorsque l’utilisateur clique sur la barre de titre ou la bordure de dimensionnement de la fenêtre, ou lorsque la fenêtre transmet le message WM_SYSCOMMAND à la fonction DefWindowProc et que le paramètre wParam du message spécifie la valeur SC_MOVE ou SC_SIZE. L’opération est terminée lors du retour de la fonction DefWindowProc.
Le système envoie le message WM_ENTERSIZEMOVE, que le glissement de fenêtres complètes soit activé ou non.
WM_ERASEBKGND Envoyé lorsque l’arrière-plan de la fenêtre doit être effacé (par exemple, lorsqu’une fenêtre est redimensionnée). Le message est envoyé pour préparer une partie invalidée d’une fenêtre pour le dessin.
WM_EXITSIZEMOVE Envoyé une fois à une fenêtre après qu’elle soit sortie de la boucle modale de dimensionnement ou de déplacement. La fenêtre entre dans la boucle modale de déplacement ou de dimensionnement lorsque l’utilisateur clique sur la barre de titre ou la bordure de dimensionnement de la fenêtre, ou lorsque la fenêtre transmet le message WM_SYSCOMMAND à la fonction DefWindowProc et que le paramètre wParam du message spécifie la valeur SC_MOVE ou SC_SIZE. L’opération est terminée lors du retour de la fonction DefWindowProc.
WM_GETICON Envoyé à une fenêtre pour récupérer un handle de l’icône grande ou petite associée à une fenêtre. Le système affiche la grande icône dans la boîte de dialogue ALT+TAB et la petite icône dans la légende de la fenêtre.
WM_GETMINMAXINFO Envoyé à une fenêtre lorsque la taille ou la position de la fenêtre est sur le point de changer. Une application peut utiliser ce message pour remplacer la taille et la position par défaut de la fenêtre agrandie, ou sa taille de suivi minimale ou maximale par défaut.
WM_INPUTLANGCHANGE Envoyé à la fenêtre de premier plan la plus affectée après la modification du langage d'entrée d'une application. Vous devez définir des paramètres spécifiques à l’application et transmettre le message à la fonction DefWindowProc, qui transmet le message à toutes les fenêtres enfants de premier niveau. Ces fenêtres enfants peuvent transmettre le message à DefWindowProc pour qu’elle la répercute à ses fenêtres enfants, et ainsi de suite.
WM_INPUTLANGCHANGEREQUEST Publié dans la fenêtre avec le focus lorsque l’utilisateur choisit une nouvelle langue d’entrée, avec la touche d’accès rapide (spécifiée dans l’application du panneau de configuration clavier) ou à partir de l’indicateur dans la barre des tâches système. Une application peut accepter la modification en passant le message à la fonction DefWindowProc ou rejeter la modification (et l’empêcher de se produire) en retournant immédiatement.
WM_MOVE Envoyé une fois qu’une fenêtre a été déplacée.
WM_MOVING Envoyé à une fenêtre que l’utilisateur déplace. En traitant ce message, une application peut surveiller la position du rectangle de glissement et, si nécessaire, modifier sa position.
WM_NCACTIVATE Envoyé à une fenêtre lorsque sa zone non cliente doit être modifiée pour indiquer un état actif ou inactif.
WM_NCCALCSIZE Envoyé lorsque la taille et la position de la zone cliente d’une fenêtre doivent être calculées. En traitant ce message, une application peut contrôler le contenu de la zone cliente de la fenêtre lorsque la taille ou la position de la fenêtre change.
WM_NCCREATE Envoyé avant le message WM_CREATE lors de la création d’une fenêtre.
WM_NCDESTROY Informe une fenêtre que sa zone non cliente est détruite. La fonction DestroyWindow envoie le message WM_NCDESTROY à la fenêtre après le message WM_DESTROY. WM_DESTROY est utilisé pour libérer l’objet mémoire alloué associé à la fenêtre.
Le message WM_NCDESTROY est envoyé après la destruction des fenêtres enfants. En revanche, WM_DESTROY est envoyé avant que les fenêtres enfants ne soient détruites.
WM_NULL N’effectue aucune opération. Une application envoie le message WM_NULL s’il souhaite publier un message que la fenêtre du destinataire ignore.
WM_PARENTNOTIFY Envoyé au parent d’une fenêtre enfant lorsque la fenêtre enfant est créée ou détruite, ou lorsque l’utilisateur clique sur un bouton de souris pendant que le curseur se trouve sur la fenêtre enfant. Lorsque la fenêtre enfant est créée, le système envoie WM_PARENTNOTIFY juste avant le retour de la fonction CreateWindow ou CreateWindowEx qui crée la fenêtre. Lorsque la fenêtre enfant est détruite, le système envoie le message avant tout traitement pour détruire la fenêtre.
WM_QUERYDRAGICON Envoyé à une fenêtre réduite (sous forme d’icône). La fenêtre est sur le point d’être déplacée par l’utilisateur, mais n’a pas d’icône définie pour sa classe. Une application peut retourner un handle d’une icône ou d’un curseur. Le système affiche ce curseur ou cette icône pendant que l’utilisateur fait glisser l’icône.
WM_QUERYOPEN Envoyé à une icône lorsque l’utilisateur demande que la fenêtre soit restaurée à sa taille et sa position précédentes.
WM_QUIT Indique une demande d’arrêt d’une application et est générée lorsque l’application appelle la fonction PostQuitMessage. La fonction GetMessage retourne alors zéro.
WM_SHOWWINDOW Envoyé à une fenêtre lorsque la fenêtre est sur le point d’être masquée ou affichée.
WM_SIZE Envoyé à une fenêtre après que sa taille a été modifiée.
WM_SIZING Envoyé à une fenêtre que l’utilisateur redimensionne. En traitant ce message, une application peut surveiller la taille et la position du rectangle de glissement et, si nécessaire, modifier sa taille ou sa position.
WM_STYLECHANGED Envoyé à une fenêtre après que la fonction SetWindowLong ait changé un ou plusieurs styles de la fenêtre.
WM_STYLECHANGING Envoyé à une fenêtre lorsque la fonction SetWindowLong est sur le point de modifier un ou plusieurs styles de la fenêtre.
WM_THEMECHANGED Diffusé vers chaque fenêtre après un événement de modification de thème. Par exemple, les événements de modification de thème sont l’activation d’un thème, la désactivation d’un thème ou une transition d’un thème à un autre.
WM_USERCHANGED Envoyé à toutes les fenêtres après la connexion ou déconnexion de l’utilisateur. Lorsque l’utilisateur se connecte ou se déconnecte, le système met à jour les paramètres spécifiques à l’utilisateur. Le système envoie ce message immédiatement après la mise à jour des paramètres.
WM_WINDOWPOSCHANGED Envoyé à une fenêtre dont la taille, la position ou la place dans l’ordre Z a changé suite à un appel à la fonction SetWindowPos ou à une autre fonction de gestion des fenêtres.
WM_WINDOWPOSCHANGING Envoyé à une fenêtre dont la taille, la position ou la place dans l’ordre Z est sur le point de changer suite à un appel à la fonction SetWindowPos ou à une autre fonction de gestion des fenêtres.

 

Structures de fenêtre

Nom Description
ALTTABINFO Contient des informations d’état pour la fenêtre de basculement d’application (ALT+TAB).
CHANGEFILTERSTRUCT Contient des informations de résultat étendues obtenues en appelant la fonction ChangeWindowMessageFilterEx.
CLIENTCREATESTRUCT Contient des informations sur le menu et la première fenêtre enfant de l’interface multidocument (MDI) d’une fenêtre cliente MDI. Une application transmet un pointeur à cette structure en tant que paramètre lpParam de la fonction CreateWindow lors de la création d’une fenêtre cliente MDI.
CREATESTRUCT Définit les paramètres d’initialisation passés à la procédure de fenêtre d’une application. Ces membres sont identiques aux paramètres de la fonction CreateWindowEx.
GUITHREADINFO Contient des informations sur un thread d’interface graphique utilisateur.
MINMAXINFO Contient des informations sur la taille et la position agrandies d’une fenêtre, ainsi que sa taille minimale et maximale de suivi.
NCCALCSIZE_PARAMS Contient des informations qu’une application peut utiliser lors du traitement du message WM_NCCALCSIZE pour calculer la taille, la position et le contenu valide de la zone cliente d’une fenêtre.
STYLESTRUCT Contient les styles d’une fenêtre.
TITLEBARINFO Contient des informations sur la barre de titre.
TITLEBARINFOEX Développe les informations décrites dans la structure TITLEBARINFO en incluant les coordonnées de chaque élément de la barre de titre.
UPDATELAYEREDWINDOWINFO Utilisé par UpdateLayeredWindowIndirect pour fournir des informations de position, de taille, de forme, de contenu et de translucidité pour une fenêtre superposée.
WINDOWINFO Contient des informations de fenêtre.
WINDOWPLACEMENT Contient des informations sur l’emplacement d’une fenêtre à l’écran.
WINDOWPOS Contient des informations sur la taille et la position d’une fenêtre.

 

Constantes de fenêtre

Nom Description
Styles de fenêtre étendus Styles qui peuvent être spécifiés partout où un style de fenêtre étendue est requis.
Styles de fenêtre Styles qui peuvent être spécifiés partout où un style de fenêtre est requis. Une fois le contrôle créé, ces styles ne peuvent pas être modifiés, sauf indication contraire.