Fonction DefFrameProcW (winuser.h)
Fournit le traitement par défaut pour tous les messages de fenêtre que la procédure de fenêtre d’une fenêtre de cadre MDI (Multi-Document Interface) ne traite pas. Tous les messages de fenêtre qui ne sont pas traités explicitement par la procédure window doivent être passés à la fonction DefFrameProc , et non à la fonction DefWindowProc .
Syntaxe
LRESULT DefFrameProcW(
[in] HWND hWnd,
[in] HWND hWndMDIClient,
[in] UINT uMsg,
[in] WPARAM wParam,
[in] LPARAM lParam
);
Paramètres
[in] hWnd
Type : HWND
Handle de la fenêtre de cadre MDI.
[in] hWndMDIClient
Type : HWND
Handle de la fenêtre du client MDI.
[in] uMsg
Type : UINT
Message à traiter.
[in] wParam
Type : WPARAM
Informations supplémentaires spécifiques au message.
[in] lParam
Type : LPARAM
Informations supplémentaires spécifiques au message.
Valeur retournée
Type : LRESULT
La valeur de retour spécifie le résultat du traitement du message et dépend du message. Si le paramètre hWndMDIClient a la valeur NULL, la valeur de retour est la même que pour la fonction DefWindowProc .
Remarques
Quand la procédure de fenêtre d’une application ne gère pas un message, elle transmet généralement le message à la fonction DefWindowProc pour traiter le message. Les applications MDI utilisent les fonctions DefFrameProc et DefMDIChildProc au lieu de DefWindowProc pour fournir le traitement des messages par défaut. Tous les messages qu’une application passe généralement à DefWindowProc (tels que les messages non clients et le message WM_SETTEXT ) doivent être passés à DefFrameProc à la place. La fonction DefFrameProc gère également les messages suivants.
Message | response |
---|---|
WM_COMMAND | Active la fenêtre enfant MDI choisie par l’utilisateur. Ce message est envoyé lorsque l’utilisateur choisit une fenêtre enfant MDI dans le menu de la fenêtre du cadre MDI. L’identificateur de fenêtre qui accompagne ce message identifie la fenêtre enfant MDI à activer. |
WM_MENUCHAR | Ouvre le menu de la fenêtre enfant MDI active lorsque l’utilisateur appuie sur la combinaison de touches ALT+ - (moins). |
WM_SETFOCUS | Transmet le focus du clavier à la fenêtre du client MDI, qui à son tour le transmet à la fenêtre enfant MDI active. |
WM_SIZE | Redimensionne la fenêtre du client MDI pour qu’elle s’adapte à la zone cliente de la nouvelle fenêtre frame. Si la procédure de fenêtre frame dimensionne la fenêtre cliente MDI à une autre taille, elle ne doit pas passer le message à la fonction DefWindowProc . |
Notes
L’en-tête winuser.h définit DefFrameProc comme un alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.
Configuration requise
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 |
Voir aussi
Conceptuel
Référence