MDIDOCVW, exemple : illustre MDI en utilisant l'architecture Document/Vue

Mise à jour : novembre 2007

L'exemple MDIDOCVW utilise la prise en charge de l'interface multidocument (MDI) de MFC et l'architecture Document/Vue. L'exemple contient deux types de documents : Hello (qui imprime une chaîne dans une vue) et Bounce (qui affiche une balle en couleur qui rebondit dans une vue). MDIDOCVW illustre également la minuterie Microsoft Windows, CColorDialog, CBitmap et la modification du curseur par défaut d'une fenêtre.

L'exemple MDIDOCVW fournit une fenêtre parente et deux types distincts de fenêtres enfants MDI : une fenêtre Bounce, dans laquelle une balle rebondit de tous côtés, et une fenêtre Hello, qui affiche simplement le texte "Hello, World!".

Pour obtenir un exemple utilisant la prise en charge MDI sans l'architecture Document/Vue, consultez MDI.

Note de sécurité :

Cet exemple de code est fourni pour illustrer un concept et ne doit pas être utilisé dans des applications ou des sites Web, car il peut ne pas illustrer les pratiques de programmation les plus sûres. Microsoft n'assume aucune responsabilité pour tout dommage indirect ou consécutif en cas d'utilisation de l'exemple de code à des fins autres que celles prévues.

Pour obtenir des exemples et des instructions d'installation :

  • Dans le menu ? (Aide) de Visual Studio, cliquez sur Exemples.

    Pour plus d'informations, consultez Recherche des fichiers d'exemple.

  • La liste la plus récente et la plus complète d'exemples est disponible en ligne à partir de la page Visual Studio 2008 Samples.

  • Des exemples sont également disponibles sur le disque dur de votre ordinateur. Des exemples et un fichier Readme sont stockés par défaut dans un dossier sous \Program Files\Visual Studio 9.0\Samples\. Pour les éditions Express de Visual Studio, tous les exemples sont disponibles en ligne.

Génération et exécution de l'exemple

Pour générer et exécuter l'exemple MDIDOCVW

  1. Ouvrez la solution mdi.sln.

  2. Dans le menu Générer, cliquez sur Générer.

  3. Dans le menu Déboguer, cliquez sur Exécuter sans débogage.

Dans le menu File, cliquez sur New Bounce ou New Hello pour créer une fenêtre enfant MDI. Les deux fenêtres enfants MDI déterminent les menus qui doivent être affichés lorsqu'elles sont actives. Ces deux fenêtres possèdent un menu Color. Dès que vous effectuez un choix dans ce menu, la couleur de la balle qui rebondit ou celle du texte Hello est mise à jour. Cliquez sur Custom pour appeler la boîte de dialogue Couleurs, dans laquelle vous pouvez sélectionner une couleur personnalisée.

La fenêtre Bounce dispose également d'un menu Speed, à partir duquel vous pouvez sélectionner la vitesse de déplacement de la balle à l'écran.

Une barre d'outils implémente la plupart des commandes de menu. Elle implémente également les cases à cocher correspondant aux cinq couleurs de base.

Modification du curseur par défaut

Bien que CBounceView et CHelloView se substituent tous les deux à Create, la substitution n'est pas indispensable pour tirer parti de la prise en charge MDI de l'infrastructure. La substitution de Create, situé dans la classe CBounceView, montre comment modifier le curseur par défaut. La modification du curseur par défaut d'une fenêtre nécessite l'inscription d'un nouveau WNDCLASS en appelant AfxRegisterWndClass et en passant le nom de WNDCLASS dans l'appel à Create.

Mots clés

Cet exemple illustre l'utilisation des mots clés suivants :

AfxRegisterWndClass ; CBitmap::CreateCompatibleBitmap ; CCmdUI::SetCheck; CColorDialog::DoModal ; CColorDialog::GetColor ; CDC::BitBlt; CDC::CreateCompatibleDC ; CDC::DeleteDC; CDC::DrawText ; CDC::Ellipse ; CDC::FillRect ; CDC::GetDeviceCaps ; CDC::SelectObject ; CDC::SetBkColor ; CDC::SetTextColor ; CFrameWnd::LoadFrame ; CFrameWnd::rectDefault ; CGdiObject::DeleteObject ; CMDIChildWnd::Create ; CWinApp::InitInstance ; CWnd::DestroyWindow ; CWnd::GetClientRect ; CWnd::GetCurrentMessage ; CWnd::GetDC ; CWnd::KillTimer ; CWnd::MessageBox ; CWnd::OnCreate ; CWnd::OnSize ; CWnd::OnTimer ; CWnd::ReleaseDC ; CWnd::SetTimer ; CWnd::ShowWindow ; CWnd::UpdateWindow ; GetSysColor ; LOWORD ; RGB ; max ; min

Remarque :

Certains exemples, tels que celui-ci, n'ont pas été modifiés pour refléter les changements apportés aux Assistants, aux bibliothèques et au compilateur Visual C++, mais ils illustrent bien l'exécution de la tâche souhaitée.

Voir aussi

Autres ressources

Exemples MFC