Share via


Classe CMDIFrameWndEx

Étend les fonctionnalités d’une CMDIFrameWndfenêtre d’image MDI (Windows Multiple Document Interface).

Syntaxe

class CMDIFrameWndEx : public CMDIFrameWnd

Membres

Méthodes publiques

Nom Description
CMDIFrameWndEx::ActiveItemRecalcLayout Recalcule la disposition de l’élément actif.
CMDIFrameWndEx::AddDockSite Cette méthode n’est pas utilisée.
CMDIFrameWndEx::AddPane Inscrit un volet auprès du gestionnaire d’ancrage.
CMDIFrameWndEx::AdjustClientArea Réduit la zone cliente pour autoriser une bordure.
CMDIFrameWndEx::AdjustDockingLayout Recalcule la disposition de tous les volets ancrés.
CMDIFrameWndEx::AreMDITabs Détermine si la fonctionnalité Onglets MDI ou la fonctionnalité Groupes à onglets MDI est activée.
CMDIFrameWndEx::CanConvertControlBarToMDIChild Appelé par l’infrastructure pour déterminer si la fenêtre frame peut convertir des volets d’ancrage en documents à onglets.
CMDIFrameWndEx::ControlBarToTabbedDocument Convertit le volet d’ancrage spécifié en document à onglets.
CMDIFrameWndEx::CreateDocumentWindow Crée une fenêtre de document enfant.
CMDIFrameWndEx::CreateNewWindow Appelé par l’infrastructure pour créer une nouvelle fenêtre.
CMDIFrameWndEx::CreateObject Utilisé par l'infrastructure pour créer une instance dynamique de ce type de classe.
CMDIFrameWndEx::DockPane Ancre le volet spécifié dans la fenêtre frame.
CMDIFrameWndEx::DockPaneLeftOf Ancre un volet à gauche d’un autre volet.
CMDIFrameWndEx::EnableAutoHidePanes Active le mode de masquage automatique pour les volets lorsqu’ils sont ancrés à des côtés spécifiés de la fenêtre de cadre principale.
CMDIFrameWndEx::EnableDocking Active l’ancrage des volets appartenant à la fenêtre frame MDI.
CMDIFrameWndEx::EnableFullScreenMainMenu Affiche ou masque le menu principal en mode plein écran.
CMDIFrameWndEx::EnableFullScreenMode Active le mode plein écran pour la fenêtre frame.
CMDIFrameWndEx::EnableLoadDockState Active ou désactive le chargement de l’état d’ancrage.
CMDIFrameWndEx::EnableMDITabbedGroups Active ou désactive la fonctionnalité Groupes à onglets MDI.
CMDIFrameWndEx::EnableMDITabs Active ou désactive la fonctionnalité Onglets MDI. Lorsque cette option est activée, la fenêtre frame affiche un onglet pour chaque fenêtre enfant MDI.
CMDIFrameWndEx::EnableMDITabsLastActiveActivation Spécifie si le dernier onglet actif doit être activé lorsque l’utilisateur ferme l’onglet actif.
CMDIFrameWndEx::EnablePaneMenu Active ou désactive la création et la gestion automatiques du menu contextuel du volet contextuel, qui affiche une liste de volets d’application.
CMDIFrameWndEx::EnableWindowsDialog Insère un élément de menu dont l’ID de commande appelle une CMFCWindowsManagerDialog boîte de dialogue.
CMDIFrameWndEx::GetActivePopup Retourne un pointeur vers le menu contextuel actuellement affiché.
CMDIFrameWndEx::GetPane Retourne un pointeur vers le volet qui a l’ID de contrôle spécifié.
CMDIFrameWndEx::GetDefaultResId Retourne l’ID des ressources partagées de la fenêtre frame MDI.
CMDIFrameWndEx::GetMDITabGroups Retourne une liste de fenêtres à onglets MDI.
CMDIFrameWndEx::GetMDITabs Retourne une référence à la fenêtre avec tabulation soulignée.
CMDIFrameWndEx::GetMDITabsContextMenuAllowedItems Retourne une combinaison d’indicateurs qui détermine quels éléments de menu contextuel sont valides lorsque la fonctionnalité Groupes à onglets MDI est activée.
CMDIFrameWndEx::GetMenuBar Retourne un pointeur vers un objet de barre de menus attaché à la fenêtre frame.
CMDIFrameWndEx::GetRibbonBar Récupère le contrôle de barre de ruban pour le cadre.
CMDIFrameWndEx::GetTearOffBars Retourne une liste d’objets CPanedérivés qui sont dans un état de déchirure.
CMDIFrameWndEx::GetThisClass Appelé par l’infrastructure pour obtenir un pointeur vers l’objet CRuntimeClass associé à ce type de classe.
CMDIFrameWndEx::GetToolbarButtonToolTipText Appelé par l’infrastructure lorsque l’application affiche l’info-bulle d’un bouton de barre d’outils.
CMDIFrameWndEx::InsertPane Inscrit le volet spécifié auprès du gestionnaire d’ancrage.
CMDIFrameWndEx::IsFullScreen Détermine si la fenêtre frame est en mode plein écran.
CMDIFrameWndEx::IsMDITabbedGroup Détermine si la fonctionnalité Groupes à onglets MDI est activée.
CMDIFrameWndEx::IsMemberOfMDITabGroup Détermine si la fenêtre à onglets spécifiée se trouve dans la liste des fenêtres qui se trouvent dans les groupes à onglets MDI.
CMDIFrameWndEx::IsMenuBarAvailable Détermine si la fenêtre frame a une barre de menus.
CMDIFrameWndEx::IsPointNearDockSite Détermine si un point spécifié est proche du site d’ancrage.
CMDIFrameWndEx::IsPrintPreview Détermine si la fenêtre frame est en mode aperçu avant impression.
CMDIFrameWndEx::LoadFrame Crée une fenêtre frame à partir d’informations sur les ressources. (Substitue CMDIFrameWnd::LoadFrame.)
CMDIFrameWndEx::LoadMDIState Charge la disposition spécifiée des groupes à onglets MDI et la liste des documents précédemment ouverts.
CMDIFrameWndEx::MDITabMoveToNextGroup Déplace l’onglet actif de la fenêtre à onglets actuellement active vers le groupe à onglets suivant ou précédent.
CMDIFrameWndEx::MDITabNewGroup Crée un groupe à onglets qui a une seule fenêtre.
CMDIFrameWndEx::NegotiateBorderSpace Négocie l’espace de bordure dans une fenêtre frame pendant l’activation sur place OLE.
CMDIFrameWndEx::OnCloseDockingPane Appelé par l’infrastructure lorsque l’utilisateur clique sur le bouton Fermer dans un volet ancre.
CMDIFrameWndEx::OnCloseMiniFrame Appelé par l’infrastructure lorsque l’utilisateur clique sur le bouton Fermer sur une fenêtre mini frame flottante.
CMDIFrameWndEx::OnClosePopupMenu Appelé par l’infrastructure lorsqu’un menu contextuel actif traite un WM_DESTROY message.
CMDIFrameWndEx::OnCmdMsg Appelé par l’infrastructure pour acheminer et distribuer des messages de commande et mettre à jour des objets d’interface utilisateur de commande.
CMDIFrameWndEx::OnDrawMenuImage Appelée par l’infrastructure quand l’image associée à un élément de menu est dessinée.
CMDIFrameWndEx::OnDrawMenuLogo Appelé par l’infrastructure lorsqu’un CMFCPopupMenumessage est traité WM_PAINT .
CMDIFrameWndEx::OnEraseMDIClientBackground Appelé par l’infrastructure lorsque la fenêtre de trame MDI traite un WM_ERASEBKGND message.
CMDIFrameWndEx::OnMenuButtonToolHitTest Appelé par l’infrastructure lorsqu’un CMFCToolBarButtonobjet traite un WM_NCHITTEST message.
CMDIFrameWndEx::OnMoveMiniFrame Appelé par l’infrastructure pour déplacer une fenêtre mini-frame.
CMDIFrameWndEx::OnSetPreviewMode Définit le mode d’aperçu avant impression de la fenêtre principale de l’application. (Substitue CFrameWnd::OnSetPreviewMode.)
CMDIFrameWndEx::OnShowCustomizePane Appelé par l’infrastructure lorsqu’un volet Personnaliser rapidement est activé.
CMDIFrameWndEx::OnShowMDITabContextMenu Appelé par l’infrastructure lorsqu’un menu contextuel doit être affiché sur l’un des onglets. (Valide pour les groupes avec onglets MDI uniquement.)
CMDIFrameWndEx::OnShowPanes Appelé par l’infrastructure pour afficher ou masquer les volets.
CMDIFrameWndEx::OnShowPopupMenu Appelée par l’infrastructure quand un menu contextuel est activé.
CMDIFrameWndEx::OnSizeMDIClient Appelé par l’infrastructure lorsque la taille de la fenêtre MDI cliente change.
CMDIFrameWndEx::OnTearOffMenu Appelée par l’infrastructure quand un menu avec une barre détachable est activé.
CMDIFrameWndEx::OnUpdateFrameMenu Appelé par l’infrastructure pour mettre à jour le menu frame. (Substitue CMDIFrameWnd::OnUpdateFrameMenu.)
CMDIFrameWndEx::PaneFromPoint Retourne le volet d’ancrage qui contient le point spécifié.
CMDIFrameWndEx::PreTranslateMessage Utilisé par la classe CWinApp pour traduire les messages de fenêtre avant qu’ils ne soient distribués aux TranslateMessage fonctions Windows.DispatchMessage (Substitue CMDIFrameWnd::PreTranslateMessage.)
CMDIFrameWndEx::RecalcLayout Appelé par l’infrastructure pour recalculer la disposition de la fenêtre frame. (Substitue CFrameWnd::RecalcLayout.)
CMDIFrameWndEx::RemovePaneFromDockManager Annule l’inscription d’un volet et le supprime du gestionnaire d’ancrage.
CMDIFrameWndEx::SaveMDIState Enregistre la disposition actuelle des groupes à onglets MDI et la liste des documents précédemment ouverts.
CMDIFrameWndEx::SetPrintPreviewFrame Définit la fenêtre frame d’aperçu avant impression.
CMDIFrameWndEx::SetupToolbarMenu Modifie un objet de barre d’outils en recherchant des objets factices et en les remplaçant par les éléments définis par l’utilisateur spécifiés.
CMDIFrameWndEx::ShowFullScreen Bascule l’image principale du mode normal en mode plein écran.
CMDIFrameWndEx::ShowPane Affiche ou masque le volet spécifié.
CMDIFrameWndEx::ShowWindowsDialog Crée une CMFCWindowsManagerDialog zone et l’ouvre.
CMDIFrameWndEx::TabbedDocumentToControlBar Convertit le document à onglets spécifié en volet d’ancrage.
CMDIFrameWndEx::UpdateCaption Appelé par l’infrastructure pour mettre à jour le cadre de fenêtre légende.
CMDIFrameWndEx::UpdateMDITabbedBarsIcons Définit l’icône pour chaque volet à ongletS MDI.
CMDIFrameWndEx::WinHelp Appelée par l’infrastructure pour lancer l’application WinHelp ou l’aide contextuelle. (Substitue CWnd::WinHelp.)

Membres de données

Nom Description
CMDIFrameWndEx::m_bCanConvertControlBarToMDIChild Détermine si les volets d’ancrage peuvent être convertis en fenêtres enfants MDI.
CMDIFrameWndEx::m_bDisableSetRedraw Active ou désactive l’optimisation de redessiner pour les fenêtres enfants MDI.

Notes

Pour tirer parti des fonctionnalités de personnalisation étendues dans votre application MDI, dérivez la classe de fenêtre frame MDI de l’application à partir de CMDIFrameWndEx la place de CMDIFrameWnd.

Exemple

L’exemple suivant dérive une classe de CMDIFrameWndEx. Cet extrait de code provient de l’exemple DrawClient : application de dessin d’objets OLE basé sur le ruban MFC.

class CMainFrame : public CMDIFrameWndEx
{
   DECLARE_DYNAMIC(CMainFrame)
public:
   struct XStyle
   {
      COLORREF clrFill;
      COLORREF clrLine;
   };

public:
   CMainFrame();

   // Attributes
public:
   CMFCRibbonBar *GetRibbonBar() { return &m_wndRibbonBar; }

   // Operations
public:
   void UpdateUI(CDrawView *pCurrView);
   void UpdateContextTab(CDrawView *pCurrView);
   void UpdateContextTabFromObject(CDrawObjList &list);

   COLORREF GetColorFromColorButton(int nButtonID);
   int GetWeightFromLineWeight(int nButtonID);
   BOOL GetStyleFromStyles(XStyle &style);

   void SetRibbonContextCategory(UINT uiCategoryID);
   void ActivateRibbonContextCategory(UINT uiCategoryID);

   // Implementation
public:
   virtual ~CMainFrame();
#ifdef _DEBUG
   virtual void AssertValid() const;
   virtual void Dump(CDumpContext &dc) const;
#endif

protected:
   // control bar embedded members
   CMFCRibbonStatusBar m_wndStatusBar;
   CMFCRibbonBar m_wndRibbonBar;

   CMFCRibbonApplicationButton m_MainButton;

   // panel images
   CMFCToolBarImages m_PanelImages;

   // Document colors for demo:
   CList<COLORREF, COLORREF> m_lstMainColors;
   CList<COLORREF, COLORREF> m_lstAdditionalColors;
   CList<COLORREF, COLORREF> m_lstStandardColors;

   // Generated message map functions
protected:
   //{{AFX_MSG(CMainFrame)
   afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
   afx_msg void OnAppLook(UINT id);
   afx_msg void OnUpdateAppLook(CCmdUI *pCmdUI);
   afx_msg void OnWindowManager();
   afx_msg void OnMdiMoveToNextGroup();
   afx_msg void OnMdiMoveToPrevGroup();
   afx_msg void OnMdiNewHorzTabGroup();
   afx_msg void OnMdiNewVertGroup();
   afx_msg void OnMdiCancel();
   afx_msg LRESULT OnRibbonCustomize(WPARAM wp, LPARAM lp);
   afx_msg LRESULT OnHighlightRibbonListItem(WPARAM wp, LPARAM lp);
   afx_msg void OnToolsOptions();
   afx_msg void OnDummy();
   afx_msg void OnSysColorChange();
   //}}AFX_MSG

   DECLARE_MESSAGE_MAP()

   virtual BOOL OnShowMDITabContextMenu(CPoint point, DWORD dwAllowedItems, BOOL bDrop);
   virtual BOOL OnShowPopupMenu(CMFCPopupMenu *pMenuPopup);

   void ShowOptions(int nPage);
   void CreateDocumentColors();

private:
   BOOL CreateRibbonBar();
   BOOL CreateStatusBar();

   void InitMainButton();
   void InitHomeCategory();
   void InitViewCategory();
   void InitTabButtons();

   void AddContextTab_Format();

   void AdjustObjectSubmenu(CMFCPopupMenu *pMenuPopup);
   void UpdateStatusBarCountPane(int nID, CString strText, int nCount);

   UINT m_nAppLook;
};

Hiérarchie d'héritage

CObject

CCmdTarget

CWnd

CFrameWnd

CMDIFrameWnd

CMDIFrameWndEx

Spécifications

En-têteafxMDIFrameWndEx.h:

CMDIFrameWndEx::ActiveItemRecalcLayout

Recalcule la disposition de l’élément actif.

void ActiveItemRecalcLayout();

CMDIFrameWndEx::AddPane

Inscrit un volet auprès du gestionnaire d’ancrage.

BOOL AddPane(
    CBasePane* pControlBar,
    BOOL bTail=TRUE);

Paramètres

pControlBar
[in] Pointeur vers le volet à inscrire.

bTail
[in] Spécifie s’il faut ajouter ce volet à la fin de la liste.

Valeur retournée

Retourne une valeur non nulle si le volet est enregistré avec succès. Retourne 0 si le volet est déjà inscrit auprès du gestionnaire d’ancrage.

Notes

Chaque volet doit être inscrit auprès de la CDockingManager classe avant de pouvoir participer à la disposition d’ancrage. Utilisez cette méthode pour avertir le gestionnaire d’ancrage que vous souhaitez ancrer un volet spécifique. Une fois que ce volet est inscrit, le gestionnaire d’ancrage l’aligne en fonction de son paramètre d’alignement et de sa position dans la liste des volets gérés par le gestionnaire d’ancrage.

CMDIFrameWndEx::AdjustClientArea

Réduit la zone cliente pour autoriser une bordure.

virtual void AdjustClientArea();

CMDIFrameWndEx::AdjustDockingLayout

Recalcule la disposition de tous les volets ancrés.

virtual void AdjustDockingLayout(HDWP hdwp=NULL);

Paramètres

hdwp
[in] Identifie la structure de position à plusieurs fenêtres. Vous pouvez obtenir cette valeur en appelant BeginDeferWindowPos.

Notes

Appelez cette fonction membre pour recalculer la disposition de tous les volets ancrés dans la fenêtre frame.

CMDIFrameWndEx::AreMDITabs

Détermine si la fonctionnalité onglets MDI ou la fonctionnalité de groupes à onglets MDI est activée.

BOOL AreMDITabs(int* pnMDITabsType=NULL) const;

Paramètres

pnMDITabsType
[out] Pointeur vers une variable entière qui indique les fonctionnalités activées :

  • 0 : Toutes les fonctionnalités sont désactivées.
  • 1 : Les onglets MDI sont activés.
  • 2 : Les groupes à onglets MDI sont activés.

Valeur retournée

Retourne TRUE si les onglets MDI ou les groupes à onglets MDI sont activés.

Retourne FALSE si aucune des fonctionnalités ci-dessus n’est activée.

Notes

Utilisez cette fonction pour déterminer si les onglets MDI ou les groupes à onglets MDI sont activés pour la fenêtre frame. Permet CMDIFrameWndEx::EnableMDITabs d’activer ou de désactiver la fonctionnalité onglets MDI.

Permet CMDIFrameWndEx::EnableMDITabbedGroups d’activer ou de désactiver la fonctionnalité de groupes à onglets MDI.

CMDIFrameWndEx::CanConvertControlBarToMDIChild

Appelé par l’infrastructure pour déterminer si la fenêtre frame peut convertir des volets d’ancrage en documents à onglets

virtual BOOL CanConvertControlBarToMDIChild();

Valeur de retour

Retourne TRUE si la fenêtre frame peut convertir des volets d’ancrage en documents à onglets ; sinon, retourne FALSE.

Notes

Remplacez cette méthode dans une classe dérivée et revenez TRUE pour activer la conversion de volets d’ancrage en documents à onglets. Vous pouvez également définir la valeur CMDIFrameWndEx::m_bCanConvertControlBarToMDIChildTRUE.

CMDIFrameWndEx::ControlBarToTabbedDocument

Convertit le volet d’ancrage spécifié en document à onglets.

virtual CMDIChildWndEx* ControlBarToTabbedDocument(CDockablePane* pBar);

Paramètres

pBar
Pointeur vers le volet d’ancrage à convertir.

Valeur de retour

Retourne un pointeur vers la nouvelle fenêtre enfant MDI qui contient le volet d’ancrage.

Notes

Cette méthode convertit un volet d’ancrage en document à onglets. Lorsque vous appelez cette méthode, l’infrastructure crée un CMDIChildWndEx objet de classe , supprime le volet d’ancrage du gestionnaire d’ancrage et ajoute le volet d’ancrage à la nouvelle fenêtre enfant MDI. La fenêtre enfant MDI redimensionne le volet d’ancrage pour couvrir l’ensemble de la zone cliente

CMDIFrameWndEx::CreateDocumentWindow

Crée une fenêtre de document enfant.

virtual CMDIChildWndEx* CreateDocumentWindow(
    LPCTSTR lpcszDocName,
    CObject* pObj);

Paramètres

lpcszDocName
[in] Chaîne de texte qui contient un identificateur de document. En règle générale, il s’agit du chemin complet d’un fichier de document.

pObj
[in] Pointeur vers un objet défini par l’utilisateur. Par exemple, un développeur peut créer une structure de données spécifique à l’application décrivant le document et indiquant comment le document doit être initialisé au démarrage.

Valeur retournée

Pointeur vers CMDIChildWndEx.

Notes

L’infrastructure appelle cette méthode lorsqu’elle charge la liste des documents précédemment enregistrés dans le Registre.

Remplacez cette méthode pour créer des documents lorsqu’ils sont chargés à partir du Registre.

Exemple

L’exemple suivant montre comment CreateDocumentWindow utiliser l’exemple VisualStudioDemo : Application Visual Studio MFC.

Dans cet exemple, g_strStartViewName il peut s’agir du nom d’un « document virtuel » (par exemple, « Page de démarrage ») qui n’est pas chargé à partir d’un fichier de disque. Par conséquent, nous avons besoin d’un traitement spécial pour traiter ce cas.

CMainFrame::CMainFrame()
{
   CMFCPopupMenu::SetForceShadow(TRUE);
   m_bCanConvertControlBarToMDIChild = TRUE;
}

CMDIFrameWndEx::CreateNewWindow

Appelé par l’infrastructure pour créer une nouvelle fenêtre.

virtual CMDIChildWndEx* CreateNewWindow(
    LPCTSTR lpcszDocName,
    CObject* pObj);

Paramètres

lpcszDocName
[in] Nom du document.

pObj
[in] Réservé pour une future utilisation.

Valeur retournée

Pointeur vers la nouvelle fenêtre.

CMDIFrameWndEx::DockPane

Ancre le volet spécifié dans la fenêtre frame.

void DockPane(
    CBasePane* pBar,
    UINT nDockBarID=0,
    LPCRECT lpRect=NULL);

Paramètres

pBar
[in] Pointeur vers le volet pour ancrer.

nDockBarID
[in] Spécifie les côtés de la fenêtre frame à ancrer.

lpRect
[in] Non utilisé.

Notes

Cette méthode ancre le volet spécifié sur l’un des côtés de la fenêtre frame qui a été spécifiée quand CBasePane::EnableDocking et CMDIFrameWndEx::EnableDocking qui ont été appelés.

Exemple

L'exemple suivant illustre l'utilisation de la méthode DockPane. Cet extrait de code provient de l’exemple VisualStudioDemo : MFC Visual Studio Application.

DockPane(&m_wndMenuBar);
DockPane(&m_wndToolBar);
DockPane(&m_wndPropertiesBar);

DockPane(&m_wndToolbarBuild);

CMDIFrameWndEx::DockPaneLeftOf

Ancre un volet à gauche d’un autre volet.

BOOL DockPaneLeftOf(
    CPane* pBar,
    CPane* pLeftOf);

Paramètres

pBar
[in] Pointeur vers le volet d’ancrage.

pLeftOf
[in] Pointeur vers le volet qui sert de site d’ancrage.

Valeur retournée

Retourne TRUE si l’opération réussit. Sinon, retourne FALSE.

Notes

Appelez cette méthode pour ancrer plusieurs objets de volet dans un ordre prédéfini. Cette méthode ancre le volet spécifié à pBar gauche du volet spécifié par pLeftOf.

Exemple

L’exemple suivant montre comment la DockPaneLeftOf méthode est utilisée dans l’exemple VisualStudioDemo : Application Visual Studio MFC.

DockPane(&m_wndToolbarBuild);
DockPaneLeftOf(&m_wndToolbarEdit, &m_wndToolbarBuild);

CMDIFrameWndEx::EnableAutoHidePanes

Active le mode de masquage automatique pour les volets lorsqu’ils sont ancrés sur les côtés spécifiés de la fenêtre du cadre principal.

BOOL EnableAutoHidePanes(DWORD dwDockStyle);

Paramètres

dwDockStyle
[in] Spécifie les côtés de la fenêtre de cadre principale qui sera activée. Utilisez un ou plusieurs des indicateurs suivants.

  • CBRS_ALIGN_LEFT
  • CBRS_ALIGN_RIGHT
  • CBRS_ALIGN_TOP
  • CBRS_ALIGN_BOTTOM

Valeur retournée

Appelez cette fonction pour activer le mode de masquage automatique pour les volets lorsqu’ils sont ancrés sur les côtés spécifiés de la fenêtre de cadre principal.

Exemple

L’exemple suivant montre comment la EnableAutoHidePanes méthode est utilisée dans l’exemple VisualStudioDemo : Application Visual Studio MFC.

EnableAutoHidePanes(CBRS_ALIGN_ANY);

Notes

CMDIFrameWndEx::EnableDocking

Active l’ancrage des volets appartenant à la fenêtre frame MDI.

BOOL EnableDocking(DWORD dwDockStyle);

Paramètres

dwDockStyle
[in] Spécifie le style d’ancrage que vous souhaitez appliquer.

Valeur retournée

Notes

Appelez cette fonction pour activer l’ancrage des volets qui appartiennent à l’objet CMDIFrameWndEx .

Exemple

L’exemple suivant montre comment la EnableDocking méthode est utilisée dans l’exemple VisualStudioDemo : Application Visual Studio MFC.

EnableDocking(CBRS_ALIGN_ANY);

CMDIFrameWndEx::EnableFullScreenMainMenu

Affiche ou masque le menu principal en mode plein écran.

void EnableFullScreenMainMenu(BOOL bEnableMenu);

Paramètres

bEnableMenu
[in] TRUE pour afficher le menu principal en mode plein écran ou FALSE pour le masquer.

Notes

CMDIFrameWndEx::EnableFullScreenMode

Active le mode plein écran pour la fenêtre frame.

void EnableFullScreenMode(UINT uiFullScreenCmd);

Paramètres

uiFullScreenCmd
[in] ID d’une commande qui active ou désactive le mode plein écran.

Notes

En mode plein écran, toutes les barres de contrôle d’ancrage, barres d’outils et menus sont masquées et l’affichage actif est redimensionné pour occuper l’écran plein écran. Lorsque vous activez le mode plein écran, vous devez spécifier un ID de la commande qui active ou le désactive. Vous pouvez appeler EnableFullScreenMode à partir de la fonction du OnCreate cadre principal. Lorsqu’une fenêtre frame est en cours de basculement en mode plein écran, l’infrastructure crée une barre d’outils flottante avec un bouton avec l’ID de commande spécifié. Si vous souhaitez conserver le menu principal à l’écran, appelez CMDIFrameWndEx::EnableFullScreenMainMenu.

CMDIFrameWndEx::EnableLoadDockState

Active ou désactive le chargement de l’état d’ancrage.

void EnableLoadDockState(BOOL bEnable = TRUE);

Paramètres

bEnable
[in] TRUE pour activer le chargement de l’état d’ancrage pour FALSE désactiver le chargement de l’état d’ancrage.

Notes

CMDIFrameWndEx::EnableMDITabbedGroups

Active ou désactive la fonctionnalité de groupes à onglets MDI pour la fenêtre frame.

void EnableMDITabbedGroups(
    BOOL bEnable,
    const CMDITabInfo& params);

Paramètres

bEnable
[in] Si TRUE, la fonctionnalité de groupes à onglets MDI est activée ; si FALSE, la fonctionnalité de groupes à onglets MDI est désactivée.

params
[in] Spécifie les paramètres que l’infrastructure s’applique aux fenêtres enfants créées dans la zone cliente MDI.

Notes

Utilisez cette méthode pour activer ou désactiver la fonctionnalité de groupes à onglets MDI. Cette fonctionnalité permet aux applications MDI d’afficher des fenêtres enfants sous forme de fenêtres à onglets alignées verticalement ou horizontalement dans la zone cliente MDI. Les groupes de fenêtres avec onglet sont séparés par des séparateurs. L’utilisateur peut redimensionner des groupes à onglets à l’aide d’un séparateur.

L’utilisateur peut :

  • Faites glisser des onglets individuels entre des groupes.
  • Faites glisser des onglets individuels vers le bord de la fenêtre pour créer de nouveaux groupes.
  • Déplacez des onglets ou créez de nouveaux groupes à l’aide d’un menu contextuel.
  • Votre application peut enregistrer la disposition actuelle des fenêtres à onglets et la liste des documents actuellement ouverts.

Si vous appelez cette méthode avec bEnable la FALSEvaleur définie, params est ignorée.

Même si les groupes à ongletS MDI sont déjà activés, vous pouvez appeler cette méthode à nouveau pour modifier les paramètres des fenêtres enfants. Appelez la méthode avec bEnable la valeur définie et TRUE modifiez les membres de l’objet CMDITabInfo spécifiés par le params paramètre.

Pour plus d’informations sur l’utilisation des groupes à onglets MDI, consultez Groupes à onglets MDI.

Exemple

L’exemple suivant montre comment EnableMDITabbedGroups utiliser l’exemple VisualStudioDemo : Application Visual Studio MFC.

CMDITabInfo mdiTabParams;
mdiTabParams.m_bTabCustomTooltips = TRUE;

if (bMDITabsVS2005Look)
{
   mdiTabParams.m_style = CMFCTabCtrl::STYLE_3D_VS2005;
   mdiTabParams.m_bDocumentMenu = TRUE;
}
else if (bOneNoteTabs)
{
   mdiTabParams.m_style = CMFCTabCtrl::STYLE_3D_ONENOTE;
   mdiTabParams.m_bAutoColor = bMDITabColors;
}

if (bActiveTabCloseButton)
{
   mdiTabParams.m_bTabCloseButton = FALSE;
   mdiTabParams.m_bActiveTabCloseButton = TRUE;
}

EnableMDITabbedGroups(TRUE, mdiTabParams);

CMDIFrameWndEx::EnableMDITabs

Active ou désactive la fonctionnalité Onglets MDI pour la fenêtre frame MDI. Lorsque cette option est activée, la fenêtre frame affiche un onglet pour chaque fenêtre enfant MDI.

void EnableMDITabs(
    BOOL bEnable=TRUE,
    BOOL bIcons=TRUE,
    CMFCTabCtrl::Location tabLocation=CMFCTabCtrl::LOCATION_BOTTOM,
    BOOL bTabCloseButton=FALSE,
    CMFCTabCtrl::Style style=CMFCTabCtrl::STYLE_3D_SCROLLED,
    BOOL bTabCustomTooltips=FALSE,
    BOOL bActiveTabCloseButton=FALSE);

Paramètres

bEnable
Spécifie si les onglets sont activés.

bIcons
Spécifie si les icônes doivent être affichées sous les onglets.

tabLocation
Spécifie l’emplacement des étiquettes d’onglet.

bTabCloseButton
Spécifie s’il faut afficher les boutons de fermeture de tabulation.

style
Spécifie le style des onglets. Utiliser STYLE_3D_SCROLLED pour les onglets standard ou STYLE_3D_ONENOTE pour les onglets Microsoft OneNote.

bTabCustomTooltips
Spécifie si les info-bulles personnalisées sont activées.

bActiveTabCloseButton
Si TRUE, un bouton Fermer s’affiche sous l’onglet actif au lieu du coin droit de la zone d’onglet.

Notes

Appelez cette méthode pour activer ou désactiver la fonctionnalité onglets MDI pour la fenêtre frame MDI. Lorsque cette option est activée, toutes les fenêtres enfants sont affichées sous forme d’onglets.

Les étiquettes d’onglet peuvent se trouver en haut ou en bas du cadre, en fonction du paramètre tabLocation. Vous pouvez spécifier CMFCTabCtrl::LOCATION_BOTTOM (le paramètre par défaut) ou CMFCTabCtrl::LOCATION_TOP.

Si bTabCustomTooltips c’est TRUEle cas, un AFX_WM_ON_GET_TAB_TOOLTIP message est envoyé à la fenêtre de cadre principale. Votre code peut gérer ce message et fournir à l’infrastructure des info-bulles personnalisées pour les onglets MDI.

Exemple

L’exemple suivant montre comment EnableMDITabs utiliser l’exemple MDITabsDemo : application MFC Tabbed MDI.

void CMainFrame::UpdateMDITabs(BOOL bResetMDIChild)
{
   CMDITabInfo params;
   HWND hwndActive = NULL;

   switch (theApp.m_Options.m_nMDITabsType)
   {
   case CMDITabOptions::None:
   {
      BOOL bCascadeMDIChild = FALSE;

      if (IsMDITabbedGroup())
      {
         EnableMDITabbedGroups(FALSE, params);
         bCascadeMDIChild = TRUE;
      }
      else if (AreMDITabs())
      {
         EnableMDITabs(FALSE);
         bCascadeMDIChild = TRUE;
      }

      if (bCascadeMDIChild)
      {
         // CMDIClientAreaWnd m_wndClientArea
         hwndActive = (HWND)m_wndClientArea.SendMessage(WM_MDIGETACTIVE);
         m_wndClientArea.PostMessage(WM_MDICASCADE);
         m_wndClientArea.UpdateTabs(false);
         m_wndClientArea.SetActiveTab(hwndActive);
         ::BringWindowToTop(hwndActive);
      }
   }
   break;

   case CMDITabOptions::MDITabsStandard:
      hwndActive = (HWND)m_wndClientArea.SendMessage(WM_MDIGETACTIVE);
      m_wndClientArea.PostMessage(WM_MDIMAXIMIZE, LPARAM(hwndActive), 0L);
      ::BringWindowToTop(hwndActive);

      EnableMDITabs(TRUE, theApp.m_Options.m_bMDITabsIcons, theApp.m_Options.m_bTabsOnTop ? CMFCTabCtrl::LOCATION_TOP : CMFCTabCtrl::LOCATION_BOTTOM, theApp.m_Options.m_nTabsStyle);

      GetMDITabs().EnableAutoColor(theApp.m_Options.m_bTabsAutoColor);
      GetMDITabs().EnableTabDocumentsMenu(theApp.m_Options.m_bMDITabsDocMenu);
      GetMDITabs().EnableTabSwap(theApp.m_Options.m_bDragMDITabs);
      GetMDITabs().SetTabBorderSize(theApp.m_Options.m_nMDITabsBorderSize);
      GetMDITabs().SetFlatFrame(theApp.m_Options.m_bFlatFrame);
      GetMDITabs().EnableCustomToolTips(theApp.m_Options.m_bCustomTooltips);
      GetMDITabs().EnableCustomToolTips(theApp.m_Options.m_bCustomTooltips);
      GetMDITabs().EnableActiveTabCloseButton(theApp.m_Options.m_bActiveTabCloseButton);
      break;

CMDIFrameWndEx::EnableMDITabsLastActiveActivation

Spécifie si le dernier onglet actif doit être ouvert lorsque l’utilisateur ferme l’onglet actif.

void EnableMDITabsLastActiveActivation(BOOL bLastActiveTab=TRUE);

Paramètres

bLastActiveTab
[in] Si TRUE, activez l’activation du dernier onglet actif. Si FALSE, désactivez l’activation du dernier onglet actif.

Notes

Il existe deux façons d’ouvrir un onglet lorsque l’onglet actif est fermé :

  • Activez l’onglet suivant.
  • Activez l’onglet actif précédemment.

L’implémentation par défaut utilise la première façon.

Permet EnableMDITabsLastActiveActivation d’activer la deuxième façon d’activer l’activation de tabulation. Il émule la façon dont Windows ouvre les fenêtres enfants MDI.

CMDIFrameWndEx::EnablePaneMenu

Active ou désactive la création et la gestion automatiques du menu contextuel du volet contextuel, qui affiche une liste de volets d’application.

void EnablePaneMenu(
    BOOL bEnable,
    UINT uiCustomizeCmd,
    const CString& strCustomizeLabel,
    UINT uiViewToolbarsMenuEntryID,
    BOOL bContextMenuShowsToolbarsOnly=FALSE,
    BOOL bViewMenuShowsToolbarsOnly=FALSE);

Paramètres

bEnable
[in] Si TRUE, la gestion automatique du menu du volet est activée ; si FALSE, la gestion automatique est désactivée.

uiCustomizeCmd
[in] ID de commande de l’élément de menu Personnaliser . Cet élément de menu est généralement ajouté à la fin de la liste des volets.

strCustomizeLabel
[in] Texte à afficher pour l’élément de menu Personnaliser (pour la localisation).

uiViewToolbarsMenuEntryID
[in] Spécifie l’ID d’un élément de menu de barre d’outils qui ouvre le menu du volet. Il s’agit généralement du sous-menu Barres d’outils du menu Affichage .

bContextMenuShowsToolbarsOnly
[in] Si TRUE, le menu du volet affiche uniquement une liste de barres d’outils. Si FALSE, le menu affiche une liste de barres d’outils et de barres d’ancrage.

bViewMenuShowsToolbarsOnly
[in] Si TRUE, le menu du volet affiche uniquement une liste de barres d’outils. Si FALSE, le menu affiche une liste de barres d’outils et de barres d’ancrage.

Notes

Le menu contextuel affiche la liste des volets de l’application et permet à l’utilisateur d’afficher ou de masquer des volets individuels.

Exemple

L’exemple suivant montre comment EnablePaneMenu utiliser l’exemple VisualStudioDemo : Application Visual Studio MFC.

// Enable pane context menu(list of bars + customize command):
EnablePaneMenu(TRUE, ID_VIEW_CUSTOMIZE, _T("Customize..."), ID_VIEW_TOOLBARS, FALSE, TRUE);

CMDIFrameWndEx::EnableWindowsDialog

Insère un élément de menu dont l’ID de commande appelle une CMFCWindowsManagerDialog boîte de dialogue.

void EnableWindowsDialog(
    UINT uiMenuId,
    LPCTSTR lpszMenuText,
    BOOL bShowAllways=FALSE,
    BOOL bShowHelpButton=FALSE);

void EnableWindowsDialog(
    UINT uiMenuId,
    UINT uiMenuTextResId,
    BOOL bShowAllways=FALSE,
    BOOL bShowHelpButton=FALSE);

Paramètres

uiMenuId
[in] Spécifie l’ID de ressource d’un menu.

lpszMenuText
[in] Spécifie le texte de l’élément.

bShowHelpButton
[in] Spécifie s’il faut afficher un bouton d’aide dans la boîte de dialogue de gestion des fenêtres.

uiMenuTextResId
[in] Identificateur de ressource de chaîne qui contient la chaîne de texte de l’élément.

Notes

Utilisez cette méthode pour insérer un élément de menu dont la commande appelle une boîte de dialogue de gestion de fenêtre enfant MDI ( CMFCWindowsManagerDialog classe). Le nouvel élément est inséré dans le menu spécifié par uiMenuId. Appelez EnableWindowsDialog lorsque vous traitez le WM_CREATE message.

Exemple

L’exemple suivant montre comment EnableWindowsDialog utiliser l’exemple VisualStudioDemo : Application Visual Studio MFC.

// Enable windows manager:
EnableWindowsDialog(ID_WINDOW_MANAGER, _T("Windows..."), TRUE);

CMDIFrameWndEx::GetActivePopup

Retourne un pointeur vers le menu contextuel actuellement affiché.

CMFCPopupMenu* GetActivePopup() const;

Valeur retournée

Pointeur vers le menu contextuel actif ; NULL si aucun menu contextuel n’est actif.

Notes

Utilisez cette fonction pour obtenir un pointeur vers l’objet CMFCPopupMenu de classe actuellement affiché.

CMDIFrameWndEx::GetDefaultResId

Retourne l’ID des ressources partagées de la fenêtre frame MDI.

UINT GetDefaultResId() const;

Valeur retournée

Valeur d’ID de ressource. 0 si la fenêtre frame n’a pas de barre de menus.

Notes

Cette méthode retourne l’ID de ressource qui a été spécifié lorsque la fenêtre frame MDI a été chargée par CFrameWnd::LoadFrame.

CMDIFrameWndEx::GetMDITabGroups

Retourne une liste de fenêtres à onglets MDI.

const CObList& GetMDITabGroups() const;

Valeur retournée

Référence à un CObList objet de classe qui contient une liste de fenêtres à onglets. Ne stockez pas ou modifiez la liste.

Notes

Utilisez cette méthode pour accéder à la liste des fenêtres à onglets. Il peut être utile si vous souhaitez modifier ou interroger certains paramètres de fenêtres à onglets individuelles.

CMDIFrameWndEx::GetMDITabs

Retourne une référence à la fenêtre avec tabulation soulignée.

CMFCTabCtrl& GetMDITabs();

Valeur retournée

Référence à la fenêtre à onglets soulignée.

CMDIFrameWndEx::GetMDITabsContextMenuAllowedItems

Retourne une combinaison d’indicateurs qui détermine quelles opérations sont valides lorsque la fonctionnalité Groupes à onglets MDI est activée.

DWORD GetMDITabsContextMenuAllowedItems();

Valeur retournée

Combinaison de bits « ou » (|) des indicateurs suivants :

  • AFX_MDI_CREATE_VERT_GROUP - peut créer un groupe d’onglets verticaux.
  • AFX_MDI_CREATE_HORZ_GROUP - peut créer un groupe d’onglets horizontaux.
  • AFX_MDI_CAN_MOVE_PREV - peut déplacer un onglet vers le groupe d’onglets précédent.
  • AFX_MDI_CAN_MOVE_NEXT - peut déplacer un onglet vers le groupe d’onglets suivant.

Notes

Lorsque la fonctionnalité Groupes à onglets MDI est activée, vous devez savoir quelles opérations sont autorisées sous les onglets d’une fenêtre particulière. Cette méthode analyse la disposition actuelle des fenêtres à onglets et retourne une combinaison d’indicateurs qui peuvent être utilisés pour générer, par exemple, un menu contextuel.

Vous pouvez créer un groupe d’onglets verticaux lorsque toutes les fenêtres à onglets sont alignées verticalement ou lorsqu’il n’y a qu’une seule fenêtre à onglets.

Vous pouvez créer un groupe d’onglets horizontaux lorsque toutes les fenêtres à onglets sont alignées horizontalement ou lorsqu’il n’y a qu’une seule fenêtre à onglets.

Vous pouvez déplacer un onglet vers le groupe précédent uniquement s’il existe plusieurs onglets dans une fenêtre à onglets.

Vous pouvez déplacer un onglet vers le groupe suivant uniquement s’il existe plusieurs onglets dans une fenêtre à onglets.

CMDIFrameWndEx::GetMenuBar

Retourne un pointeur vers un objet de barre de menus attaché à la fenêtre frame.

const CMFCMenuBar* GetMenuBar() const;

Valeur retournée

Pointeur vers un objet de barre de menus.

CMDIFrameWndEx::GetPane

Retourne un pointeur vers le volet qui a l’ID de contrôle spécifié.

CBasePane* GetPane(UINT nID);

Paramètres

nID
[in] ID de contrôle.

Valeur retournée

Pointeur vers le volet qui a l’ID de contrôle spécifié, s’il existe. Sinon, NULL.

CMDIFrameWndEx::GetRibbonBar

Récupère le contrôle de barre de ruban pour le cadre.

CMFCRibbonBar* GetRibbonBar();

Valeur retournée

Pointeur vers la CMFCRibbonBar classe pour le frame.

Notes

CMDIFrameWndEx::GetTearOffBars

Retourne une liste de menus déchirures.

const CObList& GetTearOffBars() const;

Valeur retournée

Référence à un CObList objet de classe qui contient une collection de pointeurs vers CPanedes objets dérivés qui sont dans un état de déchirure.

Notes

CMDIFrameWndEx conserve une collection de menus déchirures. Utilisez cette méthode pour récupérer une référence à cette liste.

CMDIFrameWndEx::GetToolbarButtonToolTipText

Appelé par l’infrastructure lorsque l’application affiche l’info-bulle d’un bouton de barre d’outils.

virtual BOOL GetToolbarButtonToolTipText(
    CMFCToolBarButton* pButton,
    CString& strTTText);

Paramètres

pButton
[in] Pointeur vers un bouton de barre d’outils.

strTTText
[in] Texte d’info-bulle à afficher pour le bouton.

Valeur retournée

TRUE si l’info-bulle a été affichée. Sinon FALSE.

Notes

CMDIFrameWndEx::InsertPane

Inscrit le volet spécifié auprès du gestionnaire d’ancrage.

BOOL InsertPane(
    CBasePane* pControlBar,
    CBasePane* pTarget,
    BOOL bAfter=TRUE);

Paramètres

pControlBar
[in] Pointeur vers le volet à insérer.

pTarget
[in] Pointeur vers le volet avant ou après lequel insérer le volet.

bAfter
[in] Si TRUE, pControlBar est inséré après pTarget. Si FALSE, pControlBar est inséré avant pTarget.

Valeur retournée

TRUE si la méthode enregistre correctement le volet, FALSE si le volet a déjà été inscrit auprès du gestionnaire d’ancrage.

Notes

Utilisez cette méthode pour indiquer au gestionnaire d’ancrage un volet spécifié par pControlBar. Le gestionnaire d’ancrage aligne ce volet en fonction de l’alignement et de la position du volet dans la liste interne du gestionnaire d’ancrage.

CMDIFrameWndEx::IsFullScreen

Détermine si la fenêtre frame est en mode plein écran.

BOOL IsFullScreen() const;

Valeur retournée

TRUE si la fenêtre frame est en mode plein écran ; sinon FALSE.

Notes

Vous pouvez définir le mode plein écran en appelant la CMDIFrameWndEx::EnableFullScreenMode méthode.

CMDIFrameWndEx::IsMDITabbedGroup

Spécifie si la fonctionnalité Groupes à onglets MDI est activée.

BOOL IsMDITabbedGroup() const;

Valeur retournée

TRUE si la fonctionnalité Groupes à onglets MDI est activée ; sinon FALSE.

Notes

Pour déterminer si les onglets MDI réguliers ou la fonctionnalité groupes à onglets MDI sont activés, utilisez CMDIFrameWndEx::AreMDITabs.

CMDIFrameWndEx::IsMemberOfMDITabGroup

Détermine si la fenêtre à onglets spécifiée se trouve dans la liste des fenêtres qui se trouvent dans les groupes à onglets MDI.

BOOL IsMemberOfMDITabGroup(CWnd* pWnd);

Paramètres

pWnd
[in] Pointeur vers la fenêtre à onglets.

Valeur retournée

TRUE si la fenêtre à onglets spécifiée se trouve dans la liste des fenêtres à onglets qui forment des groupes à onglets MDI. FALSESinon.

CMDIFrameWndEx::IsMenuBarAvailable

Détermine si la fenêtre frame a une barre de menus.

BOOL IsMenuBarAvailable() const;

Valeur retournée

TRUE si le pointeur vers l’objet de barre de menus n’est pas NULL; sinon FALSE.

CMDIFrameWndEx::IsPointNearDockSite

Détermine si un point spécifié est proche du site d’ancrage.

BOOL IsPointNearDockSite(
    CPoint point,
    DWORD& dwBarAlignment,
    BOOL& bOuterEdge) const;

Paramètres

point
[in] Point spécifié dans les coordonnées de l’écran.

dwBarAlignment
[in] Spécifie le bord proche du point. Les valeurs possibles sont CBRS_ALIGN_LEFT, CBRS_ALIGN_RIGHT, CBRS_ALIGN_TOPet CBRS_ALIGN_BOTTOM

bOuterEdge
[in] TRUE si le point est proche de la bordure externe du site d’ancrage ; FALSE Sinon.

Valeur retournée

TRUE si le point est proche du site d’ancrage ; sinon FALSE.

Notes

Le point est proche du site d’ancrage lorsqu’il se trouve dans l’ensemble de sensibilité défini dans le gestionnaire d’ancrage. La sensibilité par défaut est de 15 pixels.

CMDIFrameWndEx::IsPrintPreview

Détermine si la fenêtre frame est en mode aperçu avant impression.

BOOL IsPrintPreview();

Valeur retournée

TRUE si la fenêtre frame est en mode aperçu avant impression ; sinon, FALSE.

Notes

CMDIFrameWndEx::LoadFrame

Crée une fenêtre frame à partir d’informations sur les ressources.

virtual BOOL LoadFrame(
    UINT nIDResource,
    DWORD dwDefaultStyle = WS_OVERLAPPEDWINDOW | FWS_ADDTOTITLE,
    CWnd* pParentWnd = NULL,
    CCreateContext* pContext = NULL);

Paramètres

nIDResource
[in] ID d’une ressource partagée associée à la fenêtre frame.

dwDefaultStyle
[in] Style de la fenêtre frame.

pParentWnd
[in] Pointeur vers le parent du cadre.

pContext
[in] Pointeur vers une CCreateContext structure. Ce paramètre peut être NULL.

Valeur retournée

TRUE si la méthode réussit, sinon FALSE.

CMDIFrameWndEx::LoadMDIState

Charge la disposition spécifiée des groupes à onglets MDI et la liste des documents précédemment ouverts.

virtual BOOL LoadMDIState(LPCTSTR lpszProfileName);

Paramètres

lpszProfileName
[in] Spécifie le nom du profil.

Valeur retournée

TRUE si la charge a réussi ; FALSE si la charge a échoué ou qu’il n’y a pas de données à charger.

Notes

Pour charger ou enregistrer l’état des onglets et groupes MDI et la liste des documents ouverts, procédez comme suit :

  • Appeler CMDIFrameWndEx::SaveMDIState lorsque le frame principal est fermé
  • Appel lorsque CMDIFrameWndEx::LoadMDIState le frame principal est créé. L’emplacement recommandé pour cet appel est avant l’affichage de l’image principale pour la première fois. Ajoutez avant d’ajouter CWinAppEx::EnableLoadWindowPlacement(FALSE);CWinAppEx::ReloadWindowPlacement(pMainFrame); après pMainFrame->LoadFrame (IDR_MAINFRAME);. l’appel pour LoadMDIState afficher le cadre principal à la position stockée dans le Registre.
  • Remplacez GetDocumentName dans la CMDIChildWndExclasse dérivée si votre application affiche des documents qui ne sont pas stockés en tant que fichiers. La chaîne retournée est enregistrée dans le Registre en tant qu’identificateur de document. L’implémentation de base de CMDIChildWndEx::GetDocumentName retourne une valeur obtenue à partir de CDocument::GetPathName.
  • Remplacez CMDIFrameWndEx::CreateDocumentWindow la création correcte de documents lorsqu’ils sont chargés à partir du Registre. Le premier paramètre est la chaîne retournée GetDocumentName .

Exemple

L’exemple suivant montre comment LoadMDIState utiliser l’exemple VisualStudioDemo : Application Visual Studio MFC.

// Parse command line for standard shell commands, DDE, file open
CCommandLineInfo cmdInfo;
ParseCommandLine(cmdInfo);

if (cmdInfo.m_nShellCommand == CCommandLineInfo::FileNew)
{
   if (!pMainFrame->LoadMDIState(GetRegSectionPath()))
   {
      m_pStartDocTemplate->OpenDocumentFile(NULL);
   }
}
else
{
   // Dispatch commands specified on the command line
   if (!ProcessShellCommand(cmdInfo))
   {
      return FALSE;
   }
}

CMDIFrameWndEx::MDITabMoveToNextGroup

Déplace l’onglet actif de la fenêtre à onglets actuellement active vers le groupe à onglets suivant ou précédent.

void MDITabMoveToNextGroup(BOOL bNext=TRUE);

Paramètres

bNext
[in] Si TRUE, déplacez l’onglet vers le groupe à onglets suivant. Si FALSE, déplacez-le vers le groupe tabulation précédent.

CMDIFrameWndEx::MDITabNewGroup

Crée un groupe à onglets qui a une seule fenêtre.

void MDITabNewGroup(BOOL bVert=TRUE);

Paramètres

bVert
[in] Spécifie le nouvel alignement du groupe. Si TRUE, le nouveau groupe est aligné verticalement. Si FALSE, le nouveau groupe est aligné horizontalement.

Notes

Utilisez cette fonction pour créer une fenêtre à onglets (nouveau groupe à onglets) et y ajouter le premier onglet.

Exemple

L’exemple suivant montre comment MDITabNewGroup utiliser l’exemple VisualStudioDemo : Application Visual Studio MFC.

void CMainFrame::OnMdiNewHorzTabGroup()
{
   MDITabNewGroup(FALSE);
}

CMDIFrameWndEx::m_bCanConvertControlBarToMDIChild

Spécifie si les volets d’ancrage peuvent être convertis en fenêtres enfants MDI.

BOOL m_bCanConvertControlBarToMDIChild;

Notes

Indique si les barres de contrôle d’ancrage peuvent être converties en fenêtres enfants MDI. Si cet indicateur est TRUE, l’infrastructure gère automatiquement la conversion lorsque l’utilisateur sélectionne la commande Tabbed Document . L’indicateur est protégé et vous devez activer explicitement cette option en définissant m_bCanConvertControlBarToMDIChild dans un constructeur d’une CMDIFrameWndExclasse dérivée -, ou en substituant CanConvertControlBarToMDIChild.

La valeur par défaut est FALSE.

Exemple

L’exemple suivant montre comment m_bCanConvertControlBarToMDIChild utiliser l’exemple VisualStudioDemo : Application Visual Studio MFC.

CMainFrame::CMainFrame()
{
   CMFCPopupMenu::SetForceShadow(TRUE);
   m_bCanConvertControlBarToMDIChild = TRUE;
}

CMDIFrameWndEx::m_bDisableSetRedraw

Active ou désactive l’optimisation de redessiner pour les fenêtres enfants MDI.

AFX_IMPORT_DATA static BOOL m_bDisableSetRedraw;

Notes

La valeur par défaut est TRUE.

Définissez cet indicateur FALSE sur si vous souhaitez optimiser le redessinage des enfants MDI. Dans ce cas, l’infrastructure appelle SetRedraw (FALSE) le cadre principal lorsque l’application modifie l’onglet actif.

Cet indicateur peut entraîner des effets indésirables (tels que les applications en arrière-plan qui deviennent visibles). Par conséquent, nous vous recommandons de modifier la valeur par défaut uniquement si vous rencontrez un scintillement notable pendant l’activation de l’onglet MDI.

CMDIFrameWndEx::NegotiateBorderSpace

Négocie l’espace de bordure dans une fenêtre frame pendant l’activation sur place OLE.

virtual BOOL NegotiateBorderSpace(
    UINT nBorderCmd,
    LPRECT lpRectBorder);

Paramètres

nBorderCmd
[in] Contient l’une des valeurs suivantes de l’énumération CFrameWnd::BorderCmd:

  • borderGet = 1
  • borderRequest = 2
  • borderSet = 3

lpRectBorder
[in, out] Pointeur vers une structure ou unCRectobjet de classe qui spécifie les coordonnées de la bordure.RECT

Valeur retournée

Différent de zéro si la méthode a réussi ; sinon 0.

Notes

Cette méthode est une implémentation de la négociation d’espace frontière OLE.

CMDIFrameWndEx::OnCloseDockingPane

Appelé par l’infrastructure lorsque l’utilisateur clique sur le bouton Fermer dans un volet ancre.

virtual BOOL OnCloseDockingPane(CDockablePane* pWnd);

Paramètres

pWnd
[in] Pointeur vers le volet fermé.

Valeur retournée

TRUE si le volet d’ancrage peut être fermé. Sinon, FALSE.

Notes

Remplacez cette méthode pour gérer le masquage des volets d’ancrage. Retournez FALSE si vous souhaitez empêcher un volet d’ancrage d’être masqué.

L’implémentation par défaut ne fait rien et retourne TRUE.

CMDIFrameWndEx::OnCloseMiniFrame

Appelé par l’infrastructure lorsque l’utilisateur clique sur le bouton Fermer sur une fenêtre mini-frame flottante.

virtual BOOL OnCloseMiniFrame(CPaneFrameWnd*);

Paramètres

pWnd
[in] Pointeur vers la fenêtre mini-frame fermée.

Valeur retournée

TRUE si la fenêtre mini-frame flottante peut être fermée. Sinon, FALSE.

Notes

Remplacez cette méthode pour gérer le masquage des fenêtres mini-cadres flottantes. Retournez FALSE si vous souhaitez empêcher une fenêtre mini-frame flottante d’être masquée.

L’implémentation par défaut ne fait rien et retourne TRUE.

CMDIFrameWndEx::OnClosePopupMenu

Appelé par l’infrastructure lorsqu’un menu contextuel actif traite un WM_DESTROY message.

virtual void OnClosePopupMenu(CMFCPopupMenu* pMenuPopup);

Paramètres

pMenuPopup
[in] Pointeur vers un menu contextuel.

Notes

Remplacez cette méthode si vous souhaitez traiter les notifications à partir d’objets de CMFCPopupMenu classe appartenant à la fenêtre frame MDI lorsque ces objets traitent WM_DESTROY des messages.

CMDIFrameWndEx::OnCmdMsg

Appelé par l’infrastructure pour acheminer et distribuer des messages de commande et mettre à jour des objets d’interface utilisateur de commande.

virtual BOOL OnCmdMsg(
    UINT nID,
    int nCode,
    void* pExtra,
    AFX_CMDHANDLERINFO* pHandlerInfo);

Paramètres

nID
[in] ID de commande.

nCode
[in] Identifie le code de notification de commande. Pour plus d’informations sur les valeurs pour nCode, consultez CCmdTarget::OnCmdMsg.

pExtra
[in] Utilisé en fonction de la valeur de nCode. Pour plus d'informations sur pExtra, consultez CCmdTarget::OnCmdMsg.

pHandlerInfo
[in, out] En règle générale, ce paramètre doit être NULL. Si ce n’est pas NULLle cas, OnCmdMsg renseigne les membres et pmf les pTarget membres de la pHandlerInfo structure au lieu de distribuer la commande.

Valeur retournée

Différent de zéro si le message est géré ; sinon 0.

CMDIFrameWndEx::OnDrawMenuImage

Appelée par l’infrastructure quand l’image associée à un élément de menu est dessinée.

virtual BOOL OnDrawMenuImage(
    CDC* pDC,
    const CMFCToolBarMenuButton* pMenuButton,
    const CRect& rectImage);

Paramètres

pDC
[in] Pointeur vers un contexte d’appareil.

pMenuButton
[in] Pointeur vers le bouton de menu.

rectImage
[in] Rectangle englobant de l’image.

Valeur retournée

TRUE si la méthode dessine l’image. L'implémentation par défaut retourne la valeur FALSE.

Notes

Remplacez cette méthode si vous souhaitez personnaliser le rendu d’image pour les éléments de menu appartenant à la barre de menus appartenant à l’objet CMDIFrameWndExdérivé. L'implémentation par défaut n'exécute aucune opération.

Appelé par l’infrastructure lorsqu’un CMFCPopupMenumessage est traité WM_PAINT .

virtual void OnDrawMenuLogo(
    CDC*,
    CMFCPopupMenu*,
    const CRect&);

Notes

Remplacez cette fonction pour afficher un logo dans le menu contextuel qui appartient à la barre de menus appartenant à l’objet CMDIFrameWndExdérivé. L'implémentation par défaut n'exécute aucune opération.

CMDIFrameWndEx::OnEraseMDIClientBackground

Appelé par l’infrastructure lorsque la fenêtre de trame MDI traite un WM_ERASEBKGND message.

virtual BOOL OnEraseMDIClientBackground(CDC*);

Valeur retournée

TRUE si l’application traite le message et efface l’arrière-plan.

Notes

Remplacez cette fonction membre si vous souhaitez traiter le WM_ERASEBKGND message dans une CMDIFrameWndExclasse dérivée de -.

CMDIFrameWndEx::OnMenuButtonToolHitTest

Appelé par l’infrastructure lorsqu’un CMFCToolBarButtonobjet traite un WM_NCHITTEST message.

virtual BOOL OnMenuButtonToolHitTest(
    CMFCToolBarButton* pButton,
    TOOLINFO* pTI);

Paramètres

pButton
[in] Bouton de barre d’outils.

pTI
[out] Pointeur vers une TOOLINFO structure.

Valeur retournée

TRUE si l’application remplit le pTI paramètre. L'implémentation par défaut retourne la valeur FALSE.

Notes

Remplacez cette méthode si vous souhaitez fournir des informations sur des éléments de menu spécifiques à une info-bulle. L'implémentation par défaut n'exécute aucune opération.

CMDIFrameWndEx::OnMoveMiniFrame

Appelé par l’infrastructure pour déplacer une fenêtre mini-frame.

virtual BOOL OnMoveMiniFrame(CWnd* pFrame);

Paramètres

pFrame
[in] Pointeur vers une fenêtre mini-frame.

Valeur retournée

TRUE si la méthode réussit, sinon FALSE.

CMDIFrameWndEx::OnSetPreviewMode

Définit le mode d’aperçu avant impression de la fenêtre principale de l’application.

virtual void OnSetPreviewMode(
    BOOL bPreview,
    CPrintPreviewState* pState);

Paramètres

bPreview
[in] Si TRUE, définit le mode aperçu avant impression. Si FALSE, annule le mode d’aperçu.

pState
[in] Pointeur vers une CPrintPreviewState structure.

Notes

Cette méthode se substitue à CFrameWnd::OnSetPreviewMode.

CMDIFrameWndEx::OnShowCustomizePane

Appelé par l’infrastructure lorsqu’un volet Personnaliser rapidement est activé.

virtual BOOL OnShowCustomizePane(
    CMFCPopupMenu* pMenuPane,
    UINT uiToolbarID);

Paramètres

pMenuPane
[in] Pointeur vers le volet Personnaliser rapidement.

uiToolbarID
[in] ID de contrôle de la barre d’outils à personnaliser.

Valeur retournée

Cette méthode retourne toujours TRUE.

Notes

Le volet Personnaliser rapidement est un menu qui s’ouvre lorsque l’utilisateur clique sur Personnaliser dans une barre d’outils.

Remplacez cette méthode dans une classe dérivée pour apporter des modifications dans le volet Personnaliser rapidement.

CMDIFrameWndEx::OnShowMDITabContextMenu

Appelé par l’infrastructure avant l’affichage d’un menu contextuel sur l’un des onglets. Valide uniquement pour les groupes à onglets MDI.

virtual BOOL OnShowMDITabContextMenu(
    CPoint point,
    DWORD dwAllowedItems,
    BOOL bTabDrop);

Paramètres

point
[in] Emplacement du menu dans les coordonnées de l’écran.

dwAllowedItems
[in] Combinaison de bits « ou » (|) d’indicateurs qui indique les actions autorisées pour l’onglet actif :

  • AFX_MDI_CREATE_VERT_GROUP - peut créer un groupe d’onglets verticaux.
  • AFX_MDI_CREATE_HORZ_GROUP - peut créer un groupe d’onglets horizontaux.
  • AFX_MDI_CAN_MOVE_PREV - peut déplacer un onglet vers le groupe d’onglets précédent.
  • AFX_MDI_CAN_MOVE_NEXT - peut déplacer un onglet vers le groupe d’onglets suivant.
  • AFX_MDI_CAN_BE_DOCKED - basculez un document à onglets en état ancré (pertinent uniquement pour les documents à onglets).

bTabDrop
[in] TRUE pour afficher le menu en faisant glisser l’onglet vers un autre groupe à onglets. FALSE pour afficher le menu sous la forme d’un menu contextuel sous l’onglet actif.

Valeur retournée

Remplacez cette méthode dans une CMDIFrameWndExclasse dérivée de -.

Notes

Si vous ne traitez OnShowMDITabContextMenupas, le menu contextuel ne s’affiche pas. Cette fonction est générée par l’Assistant Application MFC lorsque vous activez la fonctionnalité Groupes à onglets MDI.

Exemple

L’exemple suivant montre comment OnShowMDITabContextMenu utiliser l’exemple VisualStudioDemo : Application Visual Studio MFC.

BOOL CMainFrame::OnShowMDITabContextMenu(CPoint point, DWORD dwAllowedItems, BOOL bDrop)
{
   CMenu menu;
   VERIFY(menu.LoadMenu(bDrop ? IDR_POPUP_DROP_MDITABS : IDR_POPUP_MDITABS));

   CMenu* pPopup = menu.GetSubMenu(0);
   ASSERT(pPopup != NULL);

   if ((dwAllowedItems & AFX_MDI_CREATE_HORZ_GROUP) == 0)
   {
      pPopup->DeleteMenu(ID_MDI_NEW_HORZ_TAB_GROUP, MF_BYCOMMAND);
   }

   if ((dwAllowedItems & AFX_MDI_CREATE_VERT_GROUP) == 0)
   {
      pPopup->DeleteMenu(ID_MDI_NEW_VERT_GROUP, MF_BYCOMMAND);
   }

   if ((dwAllowedItems & AFX_MDI_CAN_MOVE_NEXT) == 0)
   {
      pPopup->DeleteMenu(ID_MDI_MOVE_TO_NEXT_GROUP, MF_BYCOMMAND);
   }

   if ((dwAllowedItems & AFX_MDI_CAN_MOVE_PREV) == 0)
   {
      pPopup->DeleteMenu(ID_MDI_MOVE_TO_PREV_GROUP, MF_BYCOMMAND);
   }

   if ((dwAllowedItems & AFX_MDI_CAN_BE_DOCKED) == 0)
   {
      pPopup->DeleteMenu(ID_MDI_TABBED_DOCUMENT, MF_BYCOMMAND);
   }

   CMFCPopupMenu* pPopupMenu = new CMFCPopupMenu;
   pPopupMenu->SetAutoDestroy(FALSE);
   pPopupMenu->Create(this, point.x, point.y, pPopup->GetSafeHmenu());

   return TRUE;
}

CMDIFrameWndEx::OnShowPanes

Appelé par l’infrastructure pour afficher ou masquer les volets.

virtual BOOL OnShowPanes(BOOL bShow);

Paramètres

bShow
[in] TRUE pour afficher les volets, FALSE pour masquer les volets.

Valeur retournée

TRUE si l’état des volets change en raison de l’appel de cette méthode, FALSE si les volets sont déjà dans l’état spécifié par bShow. Par exemple, si les volets sont masqués et bShow est FALSE, la valeur de retour est FALSE.

Notes

L’implémentation par défaut supprime la barre d’outils de la fenêtre frame de niveau supérieur.

Si CDockingManager::m_bHideDockingBarsInContainerMode c’est TRUE (valeur par défaut), tous les volets d’ancrage sont masqués.

CMDIFrameWndEx::OnShowPopupMenu

Appelé par l’infrastructure lorsqu’il ouvre un menu contextuel.

virtual BOOL OnShowPopupMenu(CMFCPopupMenu*);

Valeur retournée

TRUE si le menu contextuel doit être affiché. Sinon, FALSE. L'implémentation par défaut retourne la valeur TRUE.

Notes

Remplacez cette méthode si vous souhaitez implémenter un traitement spécial lors de l’activation du menu contextuel. Par exemple, si vous souhaitez modifier les éléments de menu standard en boutons de menu couleur, configurez les barres de déchirure, et ainsi de suite.

L'implémentation par défaut n'exécute aucune opération.

CMDIFrameWndEx::OnSizeMDIClient

Appelé par l’infrastructure lorsque la taille de la fenêtre MDI cliente change.

virtual void OnSizeMDIClient(
    const CRect& rectOld,
    const CRect& rectNew);

Paramètres

rectOld
[in] Taille actuelle de la fenêtre du client MDI.

rectNew
[in] Nouvelle taille de la fenêtre du client MDI.

Notes

CMDIFrameWndEx::OnTearOffMenu

Appelée par l’infrastructure quand un menu avec une barre détachable est activé.

virtual BOOL OnTearOffMenu(
    CMFCPopupMenu* pMenuPopup,
    CPane* pBar);

Paramètres

pMenuPopup
[in] Pointeur vers le menu contextuel.

pBar
[in] Pointeur vers la barre de déchirure.

Valeur retournée

TRUE pour autoriser l’activation du menu contextuel avec la barre de déchirure ; sinon FALSE. Par défaut, il s’agit de TRUE.

Notes

Remplacez cette fonction lorsque vous souhaitez implémenter une configuration spéciale pour la barre de déchirure. L'implémentation par défaut n'exécute aucune opération.

CMDIFrameWndEx::OnUpdateFrameMenu

Appelé par l’infrastructure pour mettre à jour le menu frame.

virtual void OnUpdateFrameMenu(HMENU hMenuAlt);

Paramètres

hMenuAlt
[in] Handle vers un menu.

CMDIFrameWndEx::PaneFromPoint

Retourne le volet d’ancrage qui contient le point spécifié.

CBasePane* PaneFromPoint(
    CPoint point,
    int nSensitivity,
    bool bExactBar,
    CRuntimeClass* pRTCBarType) const;

CBasePane* PaneFromPoint(
    CPoint point,
    int nSensitivity,
    DWORD& dwAlignment,
    CRuntimeClass* pRTCBarType) const;

Paramètres

point
[in] Point (en coordonnées d’écran).

nSensitivity
[in] Le rectangle de fenêtre de chaque volet case activée est agrandi dans toutes les directions par cette valeur.

bExactBar
[in] Si TRUE, le nSensitivity paramètre est ignoré.

pRTCBarType
[in] Si ce n’est pas NULLle cas, la méthode itère uniquement sur les volets du type spécifié.

dwAlignment
[out] Si un volet est trouvé, ce paramètre spécifie quel côté du volet est le plus proche du point spécifié.

Valeur retournée

Pointeur vers un volet d’ancrage, ou NULL si aucun contrôle ne contient le point spécifié par point.

Notes

L’appel est redirigé vers la CDockingManager classe. Pour plus d’informations, consultez CDockingManager::ControlBarFromPoint.

CMDIFrameWndEx::RecalcLayout

Appelé par l’infrastructure pour recalculer la disposition de la fenêtre frame.

virtual void RecalcLayout(BOOL bNotify = TRUE);

Paramètres

bNotify
[in] Détermine si l’élément actif sur place de la fenêtre frame reçoit la notification du changement de disposition. Si TRUE, l’élément est averti ; sinon FALSE.

Notes

Cette méthode remplace CFrameWnd ::RecalcLayout.

CMDIFrameWndEx::RemovePaneFromDockManager

Annule l’inscription d’un volet et le supprime du gestionnaire d’ancrage.

void RemovePaneFromDockManager(
    CBasePane* pControlBar,
    BOOL bDestroy,
    BOOL bAdjustLayout,
    BOOL bAutoHide,
    CBasePane* pBarReplacement);

Paramètres

pControlBar
[in] Pointeur vers un volet à supprimer.

bDestroy
[in] TRUE pour détruire le volet supprimé. FALSE pour ne pas le détruire.

bAdjustLayout
[in] TRUE pour ajuster immédiatement la disposition d’ancrage. Si FALSE, l’ajustement se produit uniquement lorsqu’un événement de redessination se produit pour d’autres raisons (l’utilisateur redimensionne la fenêtre, fait glisser le cadre principal, etc.).

bAutoHide
[in] TRUE pour supprimer le volet de la liste des volets d’autohide. FALSE pour supprimer le volet de la liste des volets réguliers.

pBarReplacement
[in] Pointeur vers un volet qui remplace le volet supprimé.

Notes

Vous devez inscrire chaque volet auprès du gestionnaire d’ancrage pour participer à la disposition d’ancrage. Utilisez CMDIFrameWndEx::AddPane ou CMDIFrameWndEx::InsertPane inscrivez des volets.

Utilisez cette méthode lorsqu’un volet ne fait plus partie de la disposition d’ancrage de la fenêtre frame.

CMDIFrameWndEx::SaveMDIState

Enregistre la disposition actuelle des groupes à onglets MDI et la liste des documents précédemment ouverts.

virtual BOOL SaveMDIState(LPCTSTR lpszProfileName);

Paramètres

lpszProfileName
[in] Spécifie le nom du profil.

Valeur retournée

TRUE si l’enregistrement a réussi ; FALSE si l’enregistrement a échoué.

Notes

Pour charger ou enregistrer l’état des onglets et groupes MDI et la liste des documents ouverts, procédez comme suit :

  • Appeler SaveMDIState lorsque le frame principal est fermé
  • Appel lorsque CMDIFrameWndEx::LoadMDIState le frame principal est créé. L’emplacement recommandé pour cet appel est avant l’affichage de l’image principale pour la première fois.
  • Appeler CWinAppEx::EnableLoadWindowPlacement(FALSE); avant pMainFrame->LoadFrame (IDR_MAINFRAME);
  • Appelez CWinAppEx::ReloadWindowPlacement(pMainFrame) après LoadMDIState pour afficher le cadre principal à la position stockée dans le Registre.
  • Remplacez GetDocumentName dans la CMDIChildWndExclasse dérivée si votre application affiche des documents qui ne sont pas stockés en tant que fichiers. La chaîne retournée est enregistrée dans le Registre en tant qu’identificateur de document. Pour plus d’informations, consultez CMDIChildWndEx::GetDocumentName.
  • Remplacez CMDIFrameWndEx::CreateDocumentWindow la création correcte de documents lorsqu’ils sont chargés à partir du Registre. Le paramètre auquel CreateDocumentWindow il s’agit de la chaîne retournée GetDocumentName précédemment.

Exemple

L’exemple suivant montre comment SaveMDIState utiliser l’exemple VisualStudioDemo : Application Visual Studio MFC.

void CMainFrame::OnClose()
{
   SaveMDIState(theApp.GetRegSectionPath());
   CMDIFrameWndEx::OnClose();
}

CMDIFrameWndEx::SetPrintPreviewFrame

Définit la fenêtre frame d’aperçu avant impression.

void SetPrintPreviewFrame(CFrameWnd* pWnd);

Paramètres

pWnd
[in] Pointeur vers une fenêtre frame d’aperçu avant impression.

Notes

CMDIFrameWndEx::SetupToolbarMenu

Modifie un objet de barre d’outils en remplaçant les éléments factices par des éléments définis par l’utilisateur.

void SetupToolbarMenu(
    CMenu& menu,
    const UINT uiViewUserToolbarCmdFirst,
    const UINT uiViewUserToolbarCmdLast);

Paramètres

menu
[in] Référence à un CMenu objet de classe à modifier.

uiViewUserToolbarCmdFirst
[in] Spécifie la première commande définie par l’utilisateur.

uiViewUserToolbarCmdLast
[in] Spécifie la dernière commande définie par l’utilisateur.

CMDIFrameWndEx::ShowFullScreen

Bascule l’image principale du mode normal en mode plein écran.

void ShowFullScreen();

Notes

CMDIFrameWndEx::ShowPane

Affiche ou masque le volet spécifié.

void ShowPane(
    CBasePane* pBar,
    BOOL bShow,
    BOOL bDelay,
    BOOL bActivate);

Paramètres

pBar
[in] Pointeur vers le volet à afficher ou masquer.

bShow
[in] TRUE pour afficher le volet. FALSE pour masquer le volet.

bDelay
[in] TRUE pour retarder le recalcul de la disposition d’ancrage. FALSE pour recalculer immédiatement la disposition d’ancrage.

bActivate
[in] TRUE pour afficher le volet comme actif. FALSE pour afficher le volet comme inactif.

Notes

Appelez cette méthode pour afficher ou masquer le volet. N’utilisez ShowWindow pas les volets d’ancrage.

Exemple

L’exemple suivant montre comment ShowPane utiliser l’exemple VisualStudioDemo : Application Visual Studio MFC.

void COutputList1::OnViewOutput()
{
   CBasePane* pParentBar = DYNAMIC_DOWNCAST(CBasePane, GetOwner());
   CFrameWndEx* pMainFrame = DYNAMIC_DOWNCAST(CFrameWndEx, GetTopLevelFrame());

   if (pMainFrame != NULL && pParentBar != NULL)
   {
      pMainFrame->SetFocus();
      pMainFrame->ShowPane(pParentBar, FALSE, FALSE, FALSE);
   }
}

CMDIFrameWndEx::ShowWindowsDialog

Crée une CMFCWindowsManagerDialog zone et l’ouvre.

void ShowWindowsDialog();

Exemple

L’exemple suivant montre comment ShowWindowsDialog utiliser l’exemple VisualStudioDemo : Application Visual Studio MFC.

void CMainFrame::OnWindowManager()
{
   ShowWindowsDialog();
}

CMDIFrameWndEx::TabbedDocumentToControlBar

Convertit le document à onglets spécifié en volet d’ancrage.

virtual BOOL TabbedDocumentToControlBar(CMDIChildWndEx* pMDIChildWnd);

Paramètres

pMDIChildWnd
Pointeur vers la fenêtre enfant MDI qui contient un volet d’ancrage.

Valeur retournée

TRUE si la méthode a réussi, FALSE en cas d’échec.

Notes

Utilisez cette méthode pour convertir un document à onglets en volet d’ancrage. Le document à onglets doit avoir été créé à l’aide CMDIFrameWndEx::ControlBarToTabbedDocumentde .

Exemple

L’exemple suivant montre comment TabbedDocumentToControlBar utiliser l’exemple VisualStudioDemo : Application Visual Studio MFC.

void CMainFrame::OnMdiTabbedDocument()
{
   CMDIChildWndEx* pMDIChild = DYNAMIC_DOWNCAST(CMDIChildWndEx, MDIGetActive());
   if (pMDIChild == NULL)
   {
      ASSERT(FALSE);
      return;
   }

   TabbedDocumentToControlBar(pMDIChild);
}

CMDIFrameWndEx::UpdateCaption

Appelé par l’infrastructure pour mettre à jour le cadre de fenêtre légende.

void UpdateCaption();

Notes

CMDIFrameWndEx::UpdateMDITabbedBarsIcons

Définit l’icône pour chaque volet à ongletS MDI.

void UpdateMDITabbedBarsIcons();

CMDIFrameWndEx::WinHelp

Appelée par l’infrastructure pour lancer l’application WinHelp ou l’aide contextuelle.

virtual void WinHelp(
    DWORD dwData,
    UINT nCmd = HELP_CONTEXT);

Paramètres

dwData
[in] Spécifie les données requises pour le type d’aide spécifié par nCmd.

nCmd
[in] Spécifie le type d’aide demandé. Pour plus d’informations sur les valeurs possibles et leur impact sur le dwData paramètre, consultez WinHelp.

Notes

Cette méthode se substitue à CWnd::WinHelp.

Voir aussi

Graphique hiérarchique
Classes
CMDIFrameWnd, classe
CMDIChildWndEx, classe