Interface de documents multiples

[De nombreux utilisateurs nouveaux et intermédiaires trouvent difficile d’apprendre à utiliser des applications MDI. Par conséquent, vous devez envisager d’autres modèles pour votre interface utilisateur. Toutefois, vous pouvez utiliser MDI pour les applications qui ne s’intègrent pas facilement dans un modèle existant.]

L’interface multidocument (MDI) est une spécification qui définit une interface utilisateur pour les applications qui permettent à l’utilisateur d’utiliser plusieurs documents en même temps.

Dans cette section

Rubrique Description
À propos de l’interface de plusieurs documents Décrit l’interface de document multiple.
Utilisation de l’interface de documents multiples Explique comment effectuer des tâches associées à l’interface de documents multiples.
Référence MDI Contient la référence d’API.

Fonctions MDI

Name Description
CreateMDIWindow Crée une fenêtre enfant MDI.
DefFrameProc Fournit le traitement par défaut des messages de fenêtre que la procédure de fenêtre d’une fenêtre frame MDI ne traite pas. Tous les messages de fenêtre qui ne sont pas explicitement traités par la procédure de fenêtre doivent être passés à la fonction DefFrameProc , et non à la fonction DefWindowProc .
DefMDIChildProc Fournit le traitement par défaut de tout message de fenêtre que la procédure de fenêtre d’une fenêtre enfant MDI ne traite pas. Un message de fenêtre non traité par la procédure de fenêtre doit être passé à la fonction DefMDIChildProc , et non à la fonction DefWindowProc .
TranslateMDISysAccel Traite les séquences de touches d’accélérateur pour les commandes de menu de fenêtre des fenêtres enfants MDI associées à la fenêtre clientE MDI spécifiée. La fonction traduit les messages WM_KEYUP et WM_KEYDOWN en messages WM_SYSCOMMAND et les envoie aux fenêtres enfants MDI appropriées.

MDI Messages

Name Description
WM_MDIACTIVATE Envoyé à une fenêtre cliente MDI pour indiquer à la fenêtre cliente d’activer une autre fenêtre enfant MDI.
WM_MDICASCADE Envoyé à une fenêtre cliente MDI pour organiser toutes ses fenêtres enfants dans un format en cascade.
WM_MDICREATE Envoyé à une fenêtre cliente MDI pour créer une fenêtre enfant MDI.
WM_MDIDESTROY Envoyé à une fenêtre cliente MDI pour fermer une fenêtre enfant MDI.
WM_MDIGETACTIVE Envoyé à une fenêtre cliente MDI pour récupérer le handle dans la fenêtre enfant MDI active.
WM_MDIICONARRANGE Envoyé à une fenêtre cliente MDI pour organiser toutes les fenêtres enfants MDI réduites. Elle n’affecte pas les fenêtres enfants qui ne sont pas réduites.
WM_MDIMAXIMIZE Envoyé à une fenêtre cliente MDI pour agrandir une fenêtre enfant MDI. Le système redimensionne la fenêtre enfant pour que sa zone cliente remplisse la fenêtre cliente. Le système place l’icône de menu de la fenêtre enfant dans la position la plus à droite de la barre de menus de la fenêtre frame et place l’icône de restauration de la fenêtre enfant dans la position la plus à gauche. Le système ajoute également le texte de la barre de titre de la fenêtre enfant à celui de la fenêtre frame.
WM_MDINEXT Envoyé à une fenêtre cliente MDI pour activer la fenêtre enfant suivante ou précédente.
WM_MDIREFRESHMENU Envoyé à une fenêtre cliente MDI pour actualiser le menu de la fenêtre frame MDI.
WM_MDIRESTORE Envoyé à une fenêtre cliente MDI pour restaurer une fenêtre enfant MDI à partir d’une taille agrandie ou réduite.
WM_MDISETMENU Envoyé à une fenêtre cliente MDI pour remplacer l’intégralité du menu d’une fenêtre frame MDI, pour remplacer le menu fenêtre de la fenêtre frame, ou les deux.
WM_MDITILE Envoyé à une fenêtre cliente MDI pour organiser toutes ses fenêtres enfants MDI dans un format de vignette.

MDI Structures

Name Description
MDICREATESTRUCT Contient des informations sur la classe, le titre, le propriétaire, l’emplacement et la taille d’une fenêtre enfant MDI.