Megosztás a következőn keresztül:


CMDIFrameWndEx osztály

Megjegyzés:

A Microsoft Foundation Classes (MFC) könyvtár továbbra is támogatott. A továbbiakban azonban nem adunk hozzá funkciókat, és nem frissítjük a dokumentációt.

Kibővíti a Windows Multiple Document Interface (MDI) keretablak funkcióit CMDIFrameWnd.

Szemantika

class CMDIFrameWndEx : public CMDIFrameWnd

Tagok

Nyilvános metódusok

Név Leírás
CMDIFrameWndEx::ActiveItemRecalcLayout Újraszámítja az aktív elem elrendezését.
CMDIFrameWndEx::AddDockSite Ez a módszer nem használható.
CMDIFrameWndEx::AddPane Egy panel regisztrálása a dokkolókezelővel.
CMDIFrameWndEx::AdjustClientArea Csökkenti az ügyfélterületet a szegély engedélyezéséhez.
CMDIFrameWndEx::AdjustDockingLayout Újraszámítja az összes rögzített panel elrendezését.
CMDIFrameWndEx::AreMDITabs Meghatározza, hogy engedélyezve van-e az MDI Tabs szolgáltatás vagy az MDI többlapos csoportok funkció.
CMDIFrameWndEx::CanConvertControlBarToMDIChild A keretrendszer meghívta annak megállapítására, hogy a keretablak képes-e a dokkolópaneleket többlapos dokumentumokká alakítani.
CMDIFrameWndEx::ControlBarToTabbedDocument A megadott dokkolópanelt többlapos dokumentummá alakítja.
CMDIFrameWndEx::CreateDocumentWindow Létrehoz egy gyermekdokumentumablakot.
CMDIFrameWndEx::CreateNewWindow A keretrendszer meghívta, hogy hozzon létre egy új ablakot.
CMDIFrameWndEx::CreateObject A keretrendszer egy ilyen típusú dinamikus példány létrehozásához használja.
CMDIFrameWndEx::DockPane A megadott panel rögzítése a keretablakhoz.
CMDIFrameWndEx::DockPaneLeftOf Az egyik panelt egy másik ablaktábla bal oldalán rögzíti.
CMDIFrameWndEx::EnableAutoHidePanes Engedélyezi az automatikus elrejtés módját az ablaktáblák számára, ha a fő keretablak meghatározott oldalán vannak rögzítve.
CMDIFrameWndEx::EnableDocking Engedélyezi az MDI-keret ablakához tartozó panelek rögzítését.
CMDIFrameWndEx::EnableFullScreenMainMenu Megjeleníti vagy elrejti a főmenüt teljes képernyős módban.
CMDIFrameWndEx::EnableFullScreenMode Engedélyezi a teljes képernyős módot a keretablakban.
CMDIFrameWndEx::EnableLoadDockState Engedélyezi vagy letiltja a dokkoló állapot betöltését.
CMDIFrameWndEx::EnableMDITabbedGroups Engedélyezi vagy letiltja az MDI lapozott csoportok funkciót.
CMDIFrameWndEx::EnableMDITabs Engedélyezi vagy letiltja az MDI Tabs funkciót. Ha engedélyezve van, a keretablak minden MDI-gyermekablakhoz megjelenít egy lapot.
CMDIFrameWndEx::EnableMDITabsLastActiveActivation Megadja, hogy az utolsó aktív lap aktiválva legyen-e, amikor a felhasználó bezárja az aktuális lapot.
CMDIFrameWndEx::EnablePaneMenu Engedélyezi vagy letiltja az előugró ablaktábla menüjének automatikus létrehozását és kezelését, amely megjeleníti az alkalmazáspanelek listáját.
CMDIFrameWndEx::EnableWindowsDialog Beszúr egy menüelemet, amelynek parancsazonosítója meghív egy párbeszédpanelt CMFCWindowsManagerDialog .
CMDIFrameWndEx::GetActivePopup Az aktuálisan megjelenített előugró menüre mutató mutatót ad vissza.
CMDIFrameWndEx::GetPane A megadott vezérlőazonosítóval rendelkező panelre mutató mutatót ad vissza.
CMDIFrameWndEx::GetDefaultResId Az MDI-keretablak megosztott erőforrásainak azonosítóját adja vissza.
CMDIFrameWndEx::GetMDITabGroups Az MDI lapozott ablakainak listáját adja vissza.
CMDIFrameWndEx::GetMDITabs Az aláhúzott lapozott ablakra mutató hivatkozást ad vissza.
CMDIFrameWndEx::GetMDITabsContextMenuAllowedItems A jelölők kombinációját adja vissza, amelyek meghatározzák, hogy mely helyi menüelemek érvényesek az MDI többlapos csoportok funkciójának engedélyezésekor.
CMDIFrameWndEx::GetMenuBar A keretablakhoz csatolt menüsáv-objektumra mutató mutatót ad vissza.
CMDIFrameWndEx::GetRibbonBar Lekéri a keret menüszalagsáv-vezérlőelemét.
CMDIFrameWndEx::GetTearOffBars Visszaadja azoknak a CPane-származtatott objektumoknak a listáját, amelyek letört állapotban vannak.
CMDIFrameWndEx::GetThisClass A keretrendszer meghívta, hogy az ehhez az CRuntimeClass osztálytípushoz társított objektumra mutató mutatót kapjon.
CMDIFrameWndEx::GetToolbarButtonToolTipText A keretrendszer meghívja, amikor az alkalmazás megjeleníti az eszköztárgomb elemleírását.
CMDIFrameWndEx::InsertPane Regisztrálja a megadott panelt a dokkolókezelővel.
CMDIFrameWndEx::IsFullScreen Meghatározza, hogy a keretablak teljes képernyős módban van-e.
CMDIFrameWndEx::IsMDITabbedGroup Meghatározza, hogy engedélyezve van-e az MDI többlapos csoportok funkciója.
CMDIFrameWndEx::IsMemberOfMDITabGroup Meghatározza, hogy a megadott lapozott ablak szerepel-e az MDI-lapozott csoportokban lévő ablakok listájában.
CMDIFrameWndEx::IsMenuBarAvailable Meghatározza, hogy a keretablak rendelkezik-e menüsávval.
CMDIFrameWndEx::IsPointNearDockSite Meghatározza, hogy egy megadott pont a dokkhely közelében van-e.
CMDIFrameWndEx::IsPrintPreview Meghatározza, hogy a keretablak nyomtatási kép módban van-e.
CMDIFrameWndEx::LoadFrame Keretablakot hoz létre az erőforrás-információkból. (Felülbírálások CMDIFrameWnd::LoadFrame.)
CMDIFrameWndEx::LoadMDIState Betölti az MDI lapozott csoportjainak megadott elrendezését és a korábban megnyitott dokumentumok listáját.
CMDIFrameWndEx::MDITabMoveToNextGroup Az aktív lap áthelyezése az aktuálisan aktív lapozott ablakból a következő vagy az előző lapozott csoportba.
CMDIFrameWndEx::MDITabNewGroup Létrehoz egy új többlapos csoportot, amely egyetlen ablakkal rendelkezik.
CMDIFrameWndEx::NegotiateBorderSpace A keretablak szegélyterületének egyeztetése az OLE helyszíni aktiválása során.
CMDIFrameWndEx::OnCloseDockingPane A keretrendszer meghívja, amikor a felhasználó a Dokkolható panel Bezárás gombjára kattint.
CMDIFrameWndEx::OnCloseMiniFrame A keretrendszer meghívta, amikor a felhasználó a Bezárás gombra kattint egy lebegő minikeretablakban.
CMDIFrameWndEx::OnClosePopupMenu A keretrendszer meghívja, amikor egy aktív előugró menü feldolgoz egy WM_DESTROY üzenetet.
CMDIFrameWndEx::OnCmdMsg A keretrendszer meghívja a parancsüzenetek átirányítására és küldésére, valamint a parancs felhasználói felületi objektumainak frissítésére.
CMDIFrameWndEx::OnDrawMenuImage A keretrendszer meghívja a menüelemhez társított kép rajzolásakor.
CMDIFrameWndEx::OnDrawMenuLogo A keretrendszer meghívja, amikor egy CMFCPopupMenu üzenet feldolgozza WM_PAINT .
CMDIFrameWndEx::OnEraseMDIClientBackground A keretrendszer meghívja, amikor az MDI-keretablak feldolgoz egy WM_ERASEBKGND üzenetet.
CMDIFrameWndEx::OnMenuButtonToolHitTest A keretrendszer meghívja, amikor egy CMFCToolBarButton objektum feldolgoz egy WM_NCHITTEST üzenetet.
CMDIFrameWndEx::OnMoveMiniFrame A keretrendszer meghívta, hogy helyezzen át egy minikeretablakot.
CMDIFrameWndEx::OnSetPreviewMode Beállítja az alkalmazás fő keretablakának nyomtatási-előnézeti módját. (Felülbírálások CFrameWnd::OnSetPreviewMode.)
CMDIFrameWndEx::OnShowCustomizePane A keretrendszer meghívta a Gyors testreszabás panel aktiválásakor.
CMDIFrameWndEx::OnShowMDITabContextMenu A keretrendszer meghívja, amikor egy helyi menüt kell megjeleníteni az egyik lapon. (Csak MDI-s többlapos csoportokra érvényes.)
CMDIFrameWndEx::OnShowPanes A keretrendszer meghívta a panelek megjelenítésére vagy elrejtésére.
CMDIFrameWndEx::OnShowPopupMenu A keretrendszer meghívja az előugró menü aktiválásakor.
CMDIFrameWndEx::OnSizeMDIClient A keretrendszer meghívja, amikor az ügyfél MDI-ablakának mérete változik.
CMDIFrameWndEx::OnTearOffMenu A keretrendszer meghívja, ha egy letört sávot tartalmazó menü aktiválódik.
CMDIFrameWndEx::OnUpdateFrameMenu A keretrendszer meghívta a keretmenü frissítéséhez. (Felülbírálások CMDIFrameWnd::OnUpdateFrameMenu.)
CMDIFrameWndEx::PaneFromPoint A megadott pontot tartalmazó dokkolópanelt adja vissza.
CMDIFrameWndEx::PreTranslateMessage Az osztály CWinApp az ablaküzenetek fordítására használható, mielőtt elküldené őket a és TranslateMessage a DispatchMessage Windows-függvényekbe. (Felülbírálások CMDIFrameWnd::PreTranslateMessage.)
CMDIFrameWndEx::RecalcLayout A keretrendszer meghívta a keretablak elrendezésének újraszámításához. (Felülbírálások CFrameWnd::RecalcLayout.)
CMDIFrameWndEx::RemovePaneFromDockManager Törli a panel regisztrációját, és eltávolítja azt a dokkolókezelőből.
CMDIFrameWndEx::SaveMDIState Menti az MDI lapozott csoportjainak aktuális elrendezését és a korábban megnyitott dokumentumok listáját.
CMDIFrameWndEx::SetPrintPreviewFrame Beállítja a nyomtatási képkeret ablakát.
CMDIFrameWndEx::SetupToolbarMenu Módosítja az eszköztár objektumát úgy, hogy megkeresi a hamis elemeket, és lecseréli őket a megadott felhasználó által megadott elemekre.
CMDIFrameWndEx::ShowFullScreen A főkeretet normál módról teljes képernyős módra váltja.
CMDIFrameWndEx::ShowPane Megjeleníti vagy elrejti a megadott panelt.
CMDIFrameWndEx::ShowWindowsDialog Létrehoz egy CMFCWindowsManagerDialog mezőt, és megnyitja azt.
CMDIFrameWndEx::TabbedDocumentToControlBar A megadott többlapos dokumentumot dokkoló ablaktáblává alakítja.
CMDIFrameWndEx::UpdateCaption A keretrendszer meghívta az ablakkeret feliratának frissítéséhez.
CMDIFrameWndEx::UpdateMDITabbedBarsIcons Beállítja az ikont minden MDI-lapozott panelhez.
CMDIFrameWndEx::WinHelp A keretrendszer meghívta a WinHelp-alkalmazás vagy a környezet súgójának elindításához. (Felülbírálások CWnd::WinHelp.)

Adattagok

Név Leírás
CMDIFrameWndEx::m_bCanConvertControlBarToMDIChild Meghatározza, hogy a dokkolópanelek átalakíthatók-e MDI gyermekablakokká.
CMDIFrameWndEx::m_bDisableSetRedraw Engedélyezi vagy letiltja az MDI gyermekablakainak újrarajzolt optimalizálását.

Megjegyzések

Az MDI-alkalmazás kiterjesztett testreszabási funkcióinak kihasználásához az alkalmazás MDI keretablak-osztályát származtathatja ahelyettCMDIFrameWndEx, hogy az alkalmazásból CMDIFrameWnd származtatható.

példa

Az alábbi példa egy osztályt CMDIFrameWndExszármaztat. Ez a kódrészlet a DrawClient-minta: MFC Ribbon-Based OLE objektumrajzalkalmazásból származik.

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;
};

Öröklési hierarchia

CObject

CCmdTarget

CWnd

CFrameWnd

CMDIFrameWnd

CMDIFrameWndEx

Követelmények

fejléc:afxMDIFrameWndEx.h

CMDIFrameWndEx::ActiveItemRecalcLayout

Újraszámítja az aktív elem elrendezését.

void ActiveItemRecalcLayout();

CMDIFrameWndEx::AddPane

Egy panel regisztrálása a dokkolókezelővel.

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

Paraméterek

pControlBar
[in] A regisztrációhoz mutasson a panelre.

bTail
[in] Megadja, hogy a panelt a lista végéhez kívánja-e adni.

Visszaadott érték

Nem nulla értéket ad vissza, ha a panel sikeresen regisztrálva van. 0 értéket ad vissza, ha a panel már regisztrálva van a dokkolókezelőben.

Megjegyzések

Minden panelt regisztrálni kell az CDockingManager osztályban , mielőtt részt vehet a rögzítési elrendezésben. Ezzel a módszerrel értesítheti a dokkolókezelőt, hogy egy adott panelt szeretne dokkolni. A panel regisztrálása után a dokkolókezelő az igazítási beállítás és a dokkolókezelő által fenntartott ablaktáblák listájában elfoglalt pozíciója alapján igazítja azt.

CMDIFrameWndEx::AdjustClientArea

Csökkenti az ügyfélterületet a szegély engedélyezéséhez.

virtual void AdjustClientArea();

CMDIFrameWndEx::AdjustDockingLayout

Újraszámítja az összes rögzített panel elrendezését.

virtual void AdjustDockingLayout(HDWP hdwp=NULL);

Paraméterek

hdwp
[in] A többablakos pozíció szerkezetét azonosítja. Ezt az értéket a hívással BeginDeferWindowPosszerezheti be.

Megjegyzések

Hívja meg ezt a tagfüggvényt a keretablakhoz rögzített összes panel elrendezésének újraszámításához.

CMDIFrameWndEx::AreMDITabs

Meghatározza, hogy engedélyezve van-e az MDI tabulátorfunkciója vagy az MDI lapozott csoportok funkciója.

BOOL AreMDITabs(int* pnMDITabsType=NULL) const;

Paraméterek

pnMDITabsType
[kifelé] Mutató egy egész szám változóra, amely azt jelzi, hogy mely funkciók engedélyezettek:

  • 0: Minden funkció le van tiltva.
  • 1: Az MDI-lapok engedélyezve van.
  • 2: Az MDI-lapozott csoportok engedélyezve van.

Visszaadott érték

Akkor adja TRUE vissza, ha az MDI-lapok vagy az MDI-füles csoportok engedélyezve van.

Akkor adja FALSE vissza, ha a fenti funkciók egyike sem engedélyezett.

Megjegyzések

Ezzel a függvénnyel meghatározhatja, hogy az MDI-lapok vagy az MDI-lapozott csoportok engedélyezve legyenek-e a keretablakban. Az MDI-lapok funkció engedélyezésére vagy letiltására használható CMDIFrameWndEx::EnableMDITabs .

Az MDI lapozott csoportok funkciójának engedélyezésére vagy letiltására használható CMDIFrameWndEx::EnableMDITabbedGroups .

CMDIFrameWndEx::CanConvertControlBarToMDIChild

A keretrendszer meghívta annak megállapítására, hogy a keretablak képes-e többlapos dokumentumokká alakítani a dokkolópaneleket

virtual BOOL CanConvertControlBarToMDIChild();

Visszaadott érték

Visszaadja TRUE , ha a keretablak többlapos dokumentummá konvertálja a dokkolópaneleket, ellenkező esetben ad vissza FALSE.

Megjegyzések

Bírálja felül ezt a metódust egy származtatott osztályban, és térjen vissza TRUE , hogy lehetővé tegye a dokkolópanelek többlapos dokumentumokké alakítását. Másik lehetőségként beállíthatja a következőt CMDIFrameWndEx::m_bCanConvertControlBarToMDIChildTRUE: .

CMDIFrameWndEx::ControlBarToTabbedDocument

A megadott dokkolópanelt többlapos dokumentummá alakítja.

virtual CMDIChildWndEx* ControlBarToTabbedDocument(CDockablePane* pBar);

Paraméterek

pBar
A konvertálni kívánt dokkoló panelre mutató mutató.

Visszaadott érték

A dokkolópanelt tartalmazó új MDI gyermekablakra mutató mutatót ad vissza.

Megjegyzések

Ez a módszer a dokkolópanelt többlapos dokumentummá alakítja. Amikor meghívja ezt a metódust, a keretrendszer létrehoz egy CMDIChildWndEx osztályobjektumot , eltávolítja a dokkolópanelt a dokkolókezelőből, és hozzáadja a dokkolópanelt az új MDI gyermekablakhoz. Az MDI gyermekablaka átméretezi a dokkolópanelt, hogy lefedje a teljes ügyfélterületet

CMDIFrameWndEx::CreateDocumentWindow

Létrehoz egy gyermekdokumentumablakot.

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

Paraméterek

lpcszDocName
[in] Dokumentumazonosítót tartalmazó szöveges sztring. Általában ez egy dokumentumfájl teljes elérési útja.

pObj
[in] Egy felhasználó által definiált objektumra mutató mutató. A fejlesztők például létrehozhatnak egy alkalmazásspecifikus adatstruktúrát, amely leírja a dokumentumot, és közli, hogyan kell inicializálni a dokumentumot az indításkor.

Visszaadott érték

Mutató a .-ra CMDIChildWndEx

Megjegyzések

A keretrendszer ezt a metódust hívja meg, amikor betölti a beállításjegyzékben korábban mentett dokumentumok listáját.

Felülbírálja ezt a metódust, hogy dokumentumokat hozzon létre, amikor betölti őket a beállításjegyzékből.

példa

Az alábbi példa bemutatja, hogyan CreateDocumentWindow használható a VisualStudioDemo minta: MFC Visual Studio-alkalmazás.

Ebben a példában g_strStartViewName egy olyan "virtuális dokumentum" (például "kezdőlap") neve lehet, amely nincs betöltve lemezfájlból. Ezért speciális feldolgozásra van szükségünk az eset kezeléséhez.

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

CMDIFrameWndEx::CreateNewWindow

A keretrendszer meghívta, hogy hozzon létre egy új ablakot.

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

Paraméterek

lpcszDocName
[in] A dokumentum neve.

pObj
[in] Jövőbeli használatra fenntartva.

Visszaadott érték

Az új ablakra mutató mutató.

CMDIFrameWndEx::DockPane

A megadott panel rögzítése a keretablakhoz.

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

Paraméterek

pBar
[in] A rögzítéshez mutasson a panelre.

nDockBarID
[in] Megadja, hogy a keretablak mely oldalait kell rögzíteni.

lpRect
[in] Nincs használatban.

Megjegyzések

Ez a metódus a megadott panelt a keretablak egyik oldalára rögzíti, amely a meghíváskor és CBasePane::EnableDocking meghívásakor CMDIFrameWndEx::EnableDocking volt megadva.

példa

Az alábbi példa a DockPane metódus használatát mutatja be. Ez a kódrészlet a VisualStudioDemo mintából származik: MFC Visual Studio Application.

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

DockPane(&m_wndToolbarBuild);

CMDIFrameWndEx::DockPaneLeftOf

Az egyik panelt egy másik ablaktábla bal oldalán rögzíti.

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

Paraméterek

pBar
[in] Mutató a dokkoló panelre.

pLeftOf
[in] Mutató a dokkhelyként szolgáló panelre.

Visszaadott érték

Akkor adja TRUE vissza, ha a művelet sikeres. Ellenkező esetben FALSEad vissza.

Megjegyzések

Ennek a metódusnak a meghívásával előre meghatározott sorrendben rögzíthet több ablaktábla-objektumot. Ez a metódus a megadott panel bal oldalán pBarlévő pLeftOf panelt dokkolja.

példa

Az alábbi példa bemutatja, hogyan használja a metódust DockPaneLeftOf a VisualStudioDemo minta: MFC Visual Studio-alkalmazás.

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

CMDIFrameWndEx::EnableAutoHidePanes

Engedélyezi a panelek automatikus elrejtésének módját, ha a főkeret ablakának megadott oldalán vannak rögzítve.

BOOL EnableAutoHidePanes(DWORD dwDockStyle);

Paraméterek

dwDockStyle
[in] Megadja a fő keretablak azon oldalait, amelyek engedélyezve lesznek. Használjon egy vagy több jelölőt.

  • CBRS_ALIGN_LEFT
  • CBRS_ALIGN_RIGHT
  • CBRS_ALIGN_TOP
  • CBRS_ALIGN_BOTTOM

Visszaadott érték

Hívja meg ezt a függvényt, hogy engedélyezze az automatikus elrejtés módot az ablaktáblákhoz, amikor a fő keretablak megadott oldalán vannak rögzítve.

példa

Az alábbi példa bemutatja, hogyan használja a metódust EnableAutoHidePanes a VisualStudioDemo minta: MFC Visual Studio-alkalmazás.

EnableAutoHidePanes(CBRS_ALIGN_ANY);

Megjegyzések

CMDIFrameWndEx::EnableDocking

Engedélyezi az MDI-keret ablakához tartozó panelek rögzítését.

BOOL EnableDocking(DWORD dwDockStyle);

Paraméterek

dwDockStyle
[in] Megadja az alkalmazni kívánt rögzítési stílust.

Visszaadott érték

Megjegyzések

Hívja meg ezt a függvényt az objektumhoz tartozó panelek dokkolásának engedélyezéséhez CMDIFrameWndEx .

példa

Az alábbi példa bemutatja, hogyan használja a metódust EnableDocking a VisualStudioDemo minta: MFC Visual Studio-alkalmazás.

EnableDocking(CBRS_ALIGN_ANY);

CMDIFrameWndEx::EnableFullScreenMainMenu

Megjeleníti vagy elrejti a főmenüt teljes képernyős módban.

void EnableFullScreenMainMenu(BOOL bEnableMenu);

Paraméterek

bEnableMenu
[in] TRUE a főmenü teljes képernyős módban való megjelenítéséhez vagy FALSE elrejtéséhez.

Megjegyzések

CMDIFrameWndEx::EnableFullScreenMode

Engedélyezi a teljes képernyős módot a keretablakban.

void EnableFullScreenMode(UINT uiFullScreenCmd);

Paraméterek

uiFullScreenCmd
[in] A teljes képernyős módot engedélyező vagy letiltó parancs azonosítója.

Megjegyzések

Teljes képernyős módban az összes dokkoló vezérlősáv, eszköztár és menü el van rejtve, és az aktív nézet átméretezése a teljes képernyős megjelenítésre történik. A teljes képernyős mód engedélyezésekor meg kell adnia annak a parancsnak az azonosítóját, amely engedélyezi vagy letiltja azt. A fő keret függvényéből EnableFullScreenMode hívhatOnCreate. Amikor egy keretablakot teljes képernyős módra vált, a keretrendszer létrehoz egy lebegő eszköztárat egy olyan gombbal, amely rendelkezik a megadott parancsazonosítóval. Ha meg szeretné tartani a főmenüt a képernyőn, hívja fel a következőt CMDIFrameWndEx::EnableFullScreenMainMenu:

CMDIFrameWndEx::EnableLoadDockState

Engedélyezi vagy letiltja a dokkoló állapot betöltését.

void EnableLoadDockState(BOOL bEnable = TRUE);

Paraméterek

bEnable
[in] TRUE a dokkoló állapot betöltésének engedélyezéséhez, FALSE a dokkoló állapot betöltésének letiltásához.

Megjegyzések

CMDIFrameWndEx::EnableMDITabbedGroups

Engedélyezi vagy letiltja az MDI lapozott csoportok funkcióját a keretablakban.

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

Paraméterek

bEnable
[in] Ha TRUEaz MDI lapozott csoportok funkciója engedélyezve van, ha FALSEaz MDI lapozott csoportok funkciója le van tiltva.

params
[in] Megadja azokat a paramétereket, amelyeket a keretrendszer az MDI-ügyfélterületen létrehozott gyermekablakokra alkalmaz.

Megjegyzések

Ezzel a módszerrel engedélyezheti vagy letilthatja az MDI-lapozott csoportok funkciót. Ez a funkció lehetővé teszi, hogy az MDI-alkalmazások többlapos ablakként jelenítsen meg gyermekablakokat, amelyek függőlegesen vagy vízszintesen vannak igazítva az MDI-ügyfélterületen belül. A többlapos ablakok csoportjait osztók választják el egymástól. A felhasználó átméretezheti a többlapos csoportokat egy felosztó használatával.

A felhasználó a következőt teheti:

  • Egyes lapok húzása csoportok között.
  • Új csoportok létrehozásához húzza az egyes lapokat az ablak szélére.
  • Lapfülek áthelyezése vagy új csoportok létrehozása helyi menüvel.
  • Az alkalmazás mentheti a lapozott ablakok aktuális elrendezését és az éppen megnyitott dokumentumok listáját.

Ha ezt a metódust bEnablea beállítással FALSE hívja meg, params a rendszer figyelmen kívül hagyja.

A gyermekablakok beállításainak módosításához még akkor is meghívhatja ezt a metódust, ha már engedélyezve van az MDI-lapozott csoportok használata. Hívja meg a metódust a paraméter által megadott objektum tagjainak beállításával bEnableTRUE és módosításávalCMDITabInfo.params

Az MDI-lapozott csoportok használatáról további információt az MDI többlapos csoportjai című témakörben talál.

példa

Az alábbi példa bemutatja, hogyan EnableMDITabbedGroups használható a VisualStudioDemo minta: MFC Visual Studio-alkalmazás.

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

Engedélyezi vagy letiltja az MDI-lapokat az MDI-keretablakban. Ha engedélyezve van, a keretablak minden MDI-gyermekablakhoz megjelenít egy lapot.

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éterek

bEnable
Megadja, hogy engedélyezve vannak-e a lapok.

bIcons
Megadja, hogy az ikonok megjelenjenek-e a lapokon.

tabLocation
A tabulátorfeliratok helyét adja meg.

bTabCloseButton
Megadja, hogy megjelenjenek-e a tabulátor bezárása gombjai.

style
A lapok stílusát határozza meg. Normál vagy STYLE_3D_SCROLLED Microsoft OneNote-lapokhoz használhatóSTYLE_3D_ONENOTE.

bTabCustomTooltips
Megadja, hogy engedélyezve vannak-e az egyéni elemleírások.

bActiveTabCloseButton
Ha TRUEa bezárás gomb nem a lapterület jobb sarkában, hanem az aktív lapon jelenik meg.

Megjegyzések

Hívja meg ezt a metódust az MDI-keretablak MDI-lapjai funkciójának engedélyezéséhez vagy letiltásához. Ha engedélyezve van, az összes gyermekablak lapként jelenik meg.

A tabulátorfeliratok a paraméter beállításától tabLocationfüggően a keret tetején vagy alján is elhelyezhetők. Megadhatja vagy CMFCTabCtrl::LOCATION_BOTTOM (az alapértelmezett beállítás) vagy CMFCTabCtrl::LOCATION_TOPa .

Ha bTabCustomTooltips igen TRUE, a AFX_WM_ON_GET_TAB_TOOLTIP rendszer üzenetet küld a fő keretablakba. A kód képes kezelni ezt az üzenetet, és egyéni elemleírásokat biztosít a keretrendszernek az MDI-lapokhoz.

példa

Az alábbi példa bemutatja, hogyan EnableMDITabs használható az MDITabsDemo minta: MFC többlapos MDI-alkalmazás.

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

Megadja, hogy az utolsó aktív lap legyen-e megnyitva, amikor a felhasználó bezárja az aktuális lapot.

void EnableMDITabsLastActiveActivation(BOOL bLastActiveTab=TRUE);

Paraméterek

bLastActiveTab
[in] Ha TRUE, engedélyezze az utolsó aktív lap aktiválását. Ha FALSE, tiltsa le az utolsó aktív lap aktiválását.

Megjegyzések

Az aktív lap bezárásakor kétféleképpen nyithat meg egy lapot:

  • Aktiválja a következő lapot.
  • Aktiválja a korábban aktív lapot.

Az alapértelmezett implementáció az első módszert használja.

A tabulátor aktiválásának második módjának engedélyezésére használható EnableMDITabsLastActiveActivation . Emulálja a Windows MDI gyermekablakainak megnyitását.

CMDIFrameWndEx::EnablePaneMenu

Engedélyezi vagy letiltja az előugró ablaktábla menüjének automatikus létrehozását és kezelését, amely megjeleníti az alkalmazáspanelek listáját.

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

Paraméterek

bEnable
[in] Ha TRUEa panelmenü automatikus kezelése engedélyezve van, ha FALSEaz automatikus kezelés le van tiltva.

uiCustomizeCmd
[in] A Testreszabás menüelem parancsazonosítója . Ez a menüelem általában a panelek listájának végére kerül.

strCustomizeLabel
[in] A Testreszabás menüelemhez (honosításhoz) megjelenítendő szöveg.

uiViewToolbarsMenuEntryID
[in] Megadja az eszköztár menüelemének azonosítóját, amely megnyitja a panel menüjét. Ez általában a Nézet menü Eszköztárak almenüje.

bContextMenuShowsToolbarsOnly
[in] Ha TRUE, a panel menüjében csak az eszköztárak listája látható. Ha FALSE, a menüben megjelenik az eszköztárak és a dokkolósávok listája.

bViewMenuShowsToolbarsOnly
[in] Ha TRUE, a panel menüjében csak az eszköztárak listája látható. Ha FALSE, a menüben megjelenik az eszköztárak és a dokkolósávok listája.

Megjegyzések

Az előugró ablaktábla menü megjeleníti az alkalmazás ablaktábláinak listáját, és lehetővé teszi, hogy a felhasználó megjelenítse vagy elrejtse az egyes ablaktáblákat.

példa

Az alábbi példa bemutatja, hogyan EnablePaneMenu használható a VisualStudioDemo minta: MFC Visual Studio-alkalmazás.

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

CMDIFrameWndEx::EnableWindowsDialog

Beszúr egy menüelemet, amelynek parancsazonosítója meghív egy párbeszédpanelt CMFCWindowsManagerDialog .

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éterek

uiMenuId
[in] Egy menü erőforrás-azonosítóját adja meg.

lpszMenuText
[in] Megadja az elem szövegét.

bShowHelpButton
[in] Megadja, hogy megjelenjen-e a Súgó gomb a Windows felügyeleti párbeszédpanelen.

uiMenuTextResId
[in] Az elem szöveges sztringjét tartalmazó sztringerőforrás-azonosító.

Megjegyzések

Ezzel a módszerrel beszúrhat egy menüelemet, amelynek parancsa MDI gyermekablak-kezelési párbeszédpanelt hív meg ( CMFCWindowsManagerDialog osztály). Az új elem be lesz szúrva a megadott uiMenuIdmenübe. Hívás EnableWindowsDialog az WM_CREATE üzenet feldolgozásakor.

példa

Az alábbi példa bemutatja, hogyan EnableWindowsDialog használható a VisualStudioDemo minta: MFC Visual Studio-alkalmazás.

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

CMDIFrameWndEx::GetActivePopup

Az aktuálisan megjelenített előugró menüre mutató mutatót ad vissza.

CMFCPopupMenu* GetActivePopup() const;

Visszaadott érték

Mutató az aktív előugró menüre; NULL ha nincs aktív előugró menü.

Megjegyzések

Ezzel a függvénnyel az aktuálisan megjelenített osztályobjektumraCMFCPopupMenu mutató mutatót kaphat.

CMDIFrameWndEx::GetDefaultResId

Az MDI-keretablak megosztott erőforrásainak azonosítóját adja vissza.

UINT GetDefaultResId() const;

Visszaadott érték

Erőforrás-azonosító érték. 0, ha a keretablakban nincs menüsáv.

Megjegyzések

Ez a metódus az MDI-keretablak betöltésekor megadott erőforrás-azonosítót CFrameWnd::LoadFrameadja vissza.

CMDIFrameWndEx::GetMDITabGroups

Az MDI lapozott ablakainak listáját adja vissza.

const CObList& GetMDITabGroups() const;

Visszaadott érték

Hivatkozás egy CObList osztályobjektumra , amely a lapozott ablakok listáját tartalmazza. Ne tárolja vagy módosítsa a listát.

Megjegyzések

Ezzel a módszerrel érheti el a többlapos ablakok listáját. Hasznos lehet, ha az egyes többlapos ablakok egyes paramétereit szeretné módosítani vagy lekérdezni.

CMDIFrameWndEx::GetMDITabs

Az aláhúzott lapozott ablakra mutató hivatkozást ad vissza.

CMFCTabCtrl& GetMDITabs();

Visszaadott érték

Hivatkozás az aláhúzott lapozott ablakra.

CMDIFrameWndEx::GetMDITabsContextMenuAllowedItems

A jelölők kombinációját adja vissza, amelyek meghatározzák, hogy milyen műveletek érvényesek az MDI lapozott csoportok funkció engedélyezésekor.

DWORD GetMDITabsContextMenuAllowedItems();

Visszaadott érték

A következő jelzők bitenkénti "vagy" (|) kombinációja:

  • AFX_MDI_CREATE_VERT_GROUP - függőleges tabulátorcsoportot hozhat létre.
  • AFX_MDI_CREATE_HORZ_GROUP - létrehozhat egy vízszintes tabulátorcsoportot.
  • AFX_MDI_CAN_MOVE_PREV - áthelyezhet egy lapot az előző lapcsoportba.
  • AFX_MDI_CAN_MOVE_NEXT - áthelyezhet egy lapot a következő lapcsoportba.

Megjegyzések

Ha az MDI többlapos csoportok funkciója engedélyezve van, tudnia kell, hogy milyen műveletek engedélyezettek egy adott ablak lapjaiban. Ez a módszer elemzi a többlapos ablakok aktuális elrendezését, és a helyi menü létrehozásához használható jelzők kombinációját adja vissza.

Létrehozhat egy új függőleges lapcsoportot, ha az összes lapozott ablak függőlegesen van igazítva, vagy ha csak egy lapozott ablak van.

Létrehozhat egy új vízszintes lapcsoportot, ha az összes lapozott ablak vízszintesen van igazítva, vagy ha csak egy lapozott ablak van.

A lapokat csak akkor helyezheti át az előző csoportba, ha több lap is van egy lapfüles ablakban.

A tabulátorokat csak akkor helyezheti át a következő csoportba, ha több lap is van egy lapfüles ablakban.

CMDIFrameWndEx::GetMenuBar

A keretablakhoz csatolt menüsáv-objektumra mutató mutatót ad vissza.

const CMFCMenuBar* GetMenuBar() const;

Visszaadott érték

Egy menüsáv-objektumra mutató mutató.

CMDIFrameWndEx::GetPane

A megadott vezérlőazonosítóval rendelkező panelre mutató mutatót ad vissza.

CBasePane* GetPane(UINT nID);

Paraméterek

nID
[in] A vezérlő azonosítója.

Visszaadott érték

A megadott vezérlőazonosítóval rendelkező panelre mutató mutató, ha létezik. Ellenkező esetben NULL.

CMDIFrameWndEx::GetRibbonBar

Lekéri a keret menüszalagsáv-vezérlőelemét.

CMFCRibbonBar* GetRibbonBar();

Visszaadott érték

Mutasson a CMFCRibbonBar keret osztályára .

Megjegyzések

CMDIFrameWndEx::GetTearOffBars

A letört menük listáját adja vissza.

const CObList& GetTearOffBars() const;

Visszaadott érték

Hivatkozás egy CObList olyan osztályobjektumra , amely mutatógyűjteményt tartalmaz olyan -származtatott objektumokhoz CPane, amelyek letört állapotban vannak.

Megjegyzések

CMDIFrameWndEx A a letört menük gyűjteményét tartja fenn. Ezzel a módszerrel lekérheti a listára mutató hivatkozást.

CMDIFrameWndEx::GetToolbarButtonToolTipText

A keretrendszer meghívja, amikor az alkalmazás megjeleníti az eszköztárgomb elemleírását.

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

Paraméterek

pButton
[in] Egérmutató egy eszköztárgombhoz.

strTTText
[in] A gombhoz megjelenítendő elemleírás szövege.

Visszaadott érték

TRUE ha az elemleírás megjelenik. FALSE egyébként.

Megjegyzések

CMDIFrameWndEx::InsertPane

Regisztrálja a megadott panelt a dokkolókezelővel.

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

Paraméterek

pControlBar
[in] Mutató a beszúrni kívánt panelre.

pTarget
[in] Az ablaktábla beszúrásához mutató mutató az ablaktábla előtt vagy után.

bAfter
[in] Ha TRUE, pControlBar akkor a beszúrás után pTargettörténik. Ha FALSE, pControlBar akkor a beszúrt .pTarget

Visszaadott érték

TRUE ha a metódus sikeresen regisztrálja a panelt, FALSE ha a panel már regisztrálva volt a dokkolókezelőben.

Megjegyzések

Ezzel a módszerrel közölheti a dokkolókezelővel a megadott pControlBarpanelt. A dokkolókezelő a panel igazításának és a dokkolókezelő belső listájában elfoglalt helyének megfelelően igazítja a panelt.

CMDIFrameWndEx::IsFullScreen

Meghatározza, hogy a keretablak teljes képernyős módban van-e.

BOOL IsFullScreen() const;

Visszaadott érték

TRUE ha a keretablak teljes képernyős módban van; egyéb esetben FALSE.

Megjegyzések

A teljes képernyős módot a metódus meghívásával CMDIFrameWndEx::EnableFullScreenMode állíthatja be.

CMDIFrameWndEx::IsMDITabbedGroup

Megadja, hogy az MDI többlapos csoportok funkciója engedélyezve van-e.

BOOL IsMDITabbedGroup() const;

Visszaadott érték

TRUE ha az MDI-lapozott csoportok funkció engedélyezve van; egyéb esetben FALSE.

Megjegyzések

Annak megállapításához, hogy engedélyezve van-e a normál MDI-lapok vagy az MDI többlapos csoportok funkció, használja a következőt CMDIFrameWndEx::AreMDITabs:

CMDIFrameWndEx::IsMemberOfMDITabGroup

Meghatározza, hogy a megadott lapozott ablak szerepel-e az MDI-lapozott csoportokban lévő ablakok listájában.

BOOL IsMemberOfMDITabGroup(CWnd* pWnd);

Paraméterek

pWnd
[in] Mutató a többlapos ablakhoz.

Visszaadott érték

TRUE ha a megadott lapozott ablak szerepel az MDI-lapozott csoportokat alkotó lapozott ablakok listájában. Ellenkező esetben FALSE.

CMDIFrameWndEx::IsMenuBarAvailable

Meghatározza, hogy a keretablak rendelkezik-e menüsávval.

BOOL IsMenuBarAvailable() const;

Visszaadott érték

TRUE ha a menüsáv objektumára mutató egérmutató nem NULL; ellenkező esetben FALSE.

CMDIFrameWndEx::IsPointNearDockSite

Meghatározza, hogy egy megadott pont a dokkhely közelében van-e.

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

Paraméterek

point
[in] A képernyő koordinátáinak megadott pontja.

dwBarAlignment
[in] Megadja, hogy a pont melyik széle legyen közel. Lehetséges értékek a következők: CBRS_ALIGN_LEFT, CBRS_ALIGN_RIGHT, CBRS_ALIGN_TOPés CBRS_ALIGN_BOTTOM

bOuterEdge
[in] TRUE ha a pont a kikötőhely külső szegélyének közelében van; FALSE egyébként.

Visszaadott érték

TRUE ha a pont a dokkhely közelében van; egyéb esetben FALSE.

Megjegyzések

A pont a dokkoló hely közelében van, amikor a dokkolókezelő bizalmassági csoportján belül van. Az alapértelmezett érzékenység 15 képpont.

CMDIFrameWndEx::IsPrintPreview

Meghatározza, hogy a keretablak nyomtatási kép módban van-e.

BOOL IsPrintPreview();

Visszaadott érték

TRUEha a keretablak nyomtatási kép módban van; egyéb esetben. FALSE

Megjegyzések

CMDIFrameWndEx::LoadFrame

Keretablakot hoz létre az erőforrás-információkból.

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

Paraméterek

nIDResource
[in] A keretablakhoz társított megosztott erőforrás azonosítója.

dwDefaultStyle
[in] A keretablak stílusa.

pParentWnd
[in] A keret szülőjének mutatója.

pContext
[in] Egy struktúra mutatójaCCreateContext. Ez a paraméter lehet NULL.

Visszaadott érték

TRUE ha a metódus sikeres, ellenkező esetben FALSE.

CMDIFrameWndEx::LoadMDIState

Betölti az MDI lapozott csoportjainak megadott elrendezését és a korábban megnyitott dokumentumok listáját.

virtual BOOL LoadMDIState(LPCTSTR lpszProfileName);

Paraméterek

lpszProfileName
[in] Megadja a profil nevét.

Visszaadott érték

TRUE ha a terhelés sikeres volt; FALSE ha a betöltés sikertelen volt, vagy nincs betöltendő adat.

Megjegyzések

Az MDI-lapok és -csoportok állapotának és a megnyitott dokumentumok listájának betöltéséhez vagy mentéséhez tegye a következőket:

  • Hívás CMDIFrameWndEx::SaveMDIState a főkeret bezárásakor
  • Hívás CMDIFrameWndEx::LoadMDIState a fő keret létrehozásakor. A hívás ajánlott helye a főkeret első megjelenítése előtt van. Hozzáadás CWinAppEx::EnableLoadWindowPlacement(FALSE); előtt pMainFrame->LoadFrame (IDR_MAINFRAME);. Adja hozzá CWinAppEx::ReloadWindowPlacement(pMainFrame); a hívás után, hogy LoadMDIState a fő keret a beállításjegyzékben tárolt pozícióban jelenjen meg.
  • Felülbírálás GetDocumentName a CMDIChildWndEx– származtatott osztályban, ha az alkalmazás nem fájlként tárolt dokumentumokat jelenít meg. A visszaadott sztringet a rendszer dokumentumazonosítóként menti a beállításjegyzékbe. Az alap implementáció egy CMDIChildWndEx::GetDocumentName , a rendszertől CDocument::GetPathNamekapott értéket ad vissza.
  • Felülbírálás CMDIFrameWndEx::CreateDocumentWindow a dokumentumok megfelelő létrehozásához, amikor betölti őket a beállításjegyzékből. Az első paraméter a visszaadott sztring GetDocumentName .

példa

Az alábbi példa bemutatja, hogyan LoadMDIState használható a VisualStudioDemo minta: MFC Visual Studio-alkalmazás.

// 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

Az aktív lap áthelyezése az aktuálisan aktív lapozott ablakból a következő vagy az előző lapozott csoportba.

void MDITabMoveToNextGroup(BOOL bNext=TRUE);

Paraméterek

bNext
[in] Ha TRUE, helyezze át a lapot a következő lapozott csoportra. Ha FALSE, helyezze át az előző lapozott csoportba.

CMDIFrameWndEx::MDITabNewGroup

Létrehoz egy új többlapos csoportot, amely egyetlen ablakkal rendelkezik.

void MDITabNewGroup(BOOL bVert=TRUE);

Paraméterek

bVert
[in] Megadja az új csoport igazítását. Ha TRUEaz új csoport függőlegesen van igazítva. Ha FALSEaz új csoport vízszintesen van igazítva.

Megjegyzések

Ezzel a függvénnyel hozzon létre egy új lapozott ablakot (új lapozott csoportot), és adja hozzá az első lapot.

példa

Az alábbi példa bemutatja, hogyan MDITabNewGroup használható a VisualStudioDemo minta: MFC Visual Studio-alkalmazás.

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

CMDIFrameWndEx::m_bCanConvertControlBarToMDIChild

Meghatározza, hogy a dokkolópanelek átalakíthatók-e MDI gyermekablakokká.

BOOL m_bCanConvertControlBarToMDIChild;

Megjegyzések

Azt jelzi, hogy a dokkoló vezérlősávok átalakíthatók-e MDI gyermekablakokká. Ha ez a jelző, TRUEa keretrendszer automatikusan kezeli az átalakítást, amikor a felhasználó kiválasztja a Többlapos dokumentum parancsot. A jelölő védett, és explicit módon engedélyeznie kell ezt a beállítást egy -származtatott osztály konstruktorának beállításával m_bCanConvertControlBarToMDIChild vagy felül kell bírálniaCMDIFrameWndEx.CanConvertControlBarToMDIChild

Az alapértelmezett érték a FALSE.

példa

Az alábbi példa bemutatja, hogyan m_bCanConvertControlBarToMDIChild használható a VisualStudioDemo minta: MFC Visual Studio-alkalmazás.

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

CMDIFrameWndEx::m_bDisableSetRedraw

Engedélyezi vagy letiltja az MDI gyermekablakainak újrarajzolt optimalizálását.

AFX_IMPORT_DATA static BOOL m_bDisableSetRedraw;

Megjegyzések

Az alapértelmezett érték a TRUE.

Állítsa ezt a jelzőt arra az FALSE esetre, ha optimalizálni szeretné az MDI-gyermekek újrarajzolását. Ebben az esetben a keretrendszer meghívja SetRedraw (FALSE) a fő keretet, amikor az alkalmazás módosítja az aktív lapot.

Ez a jelző nemkívánatos hatásokat okozhat (például a láthatóvá váló háttéralkalmazásokat). Ezért azt javasoljuk, hogy csak akkor módosítsa az alapértelmezett beállítást, ha észrevehető villódzást tapasztal az MDI-lap aktiválása során.

CMDIFrameWndEx::NegotiateBorderSpace

A keretablak szegélyterületének egyeztetése az OLE helyszíni aktiválása során.

virtual BOOL NegotiateBorderSpace(
    UINT nBorderCmd,
    LPRECT lpRectBorder);

Paraméterek

nBorderCmd
[in] Az alábbi értékek egyikét tartalmazza az enumerálásból CFrameWnd::BorderCmd:

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

lpRectBorder
[be, ki] Mutató a RECT szegély koordinátáit meghatározó struktúrára vagy CRect osztályobjektumra .

Visszaadott érték

Nonzero, ha a módszer sikeres volt; egyéb esetben 0.

Megjegyzések

Ez a módszer az OLE határtér-egyeztetés implementációja.

CMDIFrameWndEx::OnCloseDockingPane

A keretrendszer meghívja, amikor a felhasználó a Dokkolható panel Bezárás gombjára kattint.

virtual BOOL OnCloseDockingPane(CDockablePane* pWnd);

Paraméterek

pWnd
[in] Mutasson a bezárt ablaktáblára.

Visszaadott érték

TRUE ha a dokkolópanel bezárható. Ellenkező esetben FALSE.

Megjegyzések

Bírálja felül ezt a módszert a dokkolópanelek elrejtésének kezeléséhez. Ha meg szeretné akadályozni a dokkolópanel elrejtését, térjen vissza FALSE .

Az alapértelmezett implementáció nem végez semmit, és visszaadja azt TRUE.

CMDIFrameWndEx::OnCloseMiniFrame

A keretrendszer meghívta, amikor a felhasználó a Bezárás gombra kattint egy lebegő minikeretablakban.

virtual BOOL OnCloseMiniFrame(CPaneFrameWnd*);

Paraméterek

pWnd
[in] Mutasson a bezárt minikeret ablakára.

Visszaadott érték

TRUE ha a lebegő minikeret ablaka bezárható. Ellenkező esetben FALSE.

Megjegyzések

A metódus felülbírálása a lebegő minikeretes ablakok elrejtésének kezelésére. Térjen vissza FALSE , ha meg szeretné akadályozni, hogy egy lebegő minikeret ablaka rejtve legyen.

Az alapértelmezett implementáció nem végez semmit, és visszaadja azt TRUE.

CMDIFrameWndEx::OnClosePopupMenu

A keretrendszer meghívja, amikor egy aktív előugró menü feldolgoz egy WM_DESTROY üzenetet.

virtual void OnClosePopupMenu(CMFCPopupMenu* pMenuPopup);

Paraméterek

pMenuPopup
[in] Mutasson egy előugró menüre.

Megjegyzések

Bírálja felül ezt a metódust, ha az MDI-keretablakhoz tartozó osztályobjektumok értesítéseit CMFCPopupMenu szeretné feldolgozni, amikor ezek az objektumok üzeneteket dolgoznak felWM_DESTROY.

CMDIFrameWndEx::OnCmdMsg

A keretrendszer meghívja a parancsüzenetek átirányítására és küldésére, valamint a parancs felhasználói felületi objektumainak frissítésére.

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

Paraméterek

nID
[in] A parancs azonosítója.

nCode
[in] Azonosítja a parancs értesítési kódját. További információ az értékekről nCode: CCmdTarget::OnCmdMsg.

pExtra
[in] Az érték nCodeszerint használva. További információ: pExtraCCmdTarget::OnCmdMsg.

pHandlerInfo
[be, ki] Ennek a paraméternek általában a következőnek kell lennie NULL: . Ha nemNULL, OnCmdMsg akkor a parancs elküldése helyett kitölti a pTargetpmf struktúra tagjait és pHandlerInfo a szerkezet tagjait.

Visszaadott érték

Nonzero, ha az üzenetet kezelik; egyéb esetben 0.

CMDIFrameWndEx::OnDrawMenuImage

A keretrendszer meghívja a menüelemhez társított kép rajzolásakor.

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

Paraméterek

pDC
[in] Mutasson egy eszközkörnyezetre.

pMenuButton
[in] Mutasson a menügombra.

rectImage
[in] A kép határolókerete.

Visszaadott érték

TRUE ha a metódus megrajzolja a képet. Az alapértelmezett implementáció ad FALSEvissza.

Megjegyzések

Bírálja felül ezt a módszert, ha testre szeretné szabni a képmegjelenítést a -derived objektum által CMDIFrameWndExbirtokolt menüsávhoz tartozó menüelemekhez. Az alapértelmezett implementáció nem végez semmit.

A keretrendszer meghívja, amikor egy CMFCPopupMenu üzenet feldolgozza WM_PAINT .

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

Megjegyzések

Felülbírálja ezt a függvényt, hogy megjelenítsen egy emblémát az előugró menüben, amely a CMDIFrameWndEx-derived objektum által birtokolt menüsávhoz tartozik. Az alapértelmezett implementáció nem végez semmit.

CMDIFrameWndEx::OnEraseMDIClientBackground

A keretrendszer meghívja, amikor az MDI-keretablak feldolgoz egy WM_ERASEBKGND üzenetet.

virtual BOOL OnEraseMDIClientBackground(CDC*);

Visszaadott érték

TRUE ha az alkalmazás feldolgozza az üzenetet, és törli a hátteret.

Megjegyzések

Bírálja felül ezt a tagfüggvényt, ha egy WM_ERASEBKGND-származtatott osztályban szeretné feldolgozni az CMDIFrameWndEx üzenetet.

CMDIFrameWndEx::OnMenuButtonToolHitTest

A keretrendszer meghívja, amikor egy CMFCToolBarButton objektum feldolgoz egy WM_NCHITTEST üzenetet.

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

Paraméterek

pButton
[in] Az eszköztár gombja.

pTI
[kifelé] Mutató egy struktúrára TOOLINFO .

Visszaadott érték

TRUE ha az alkalmazás kitölti a paramétert pTI . Az alapértelmezett implementáció ad FALSEvissza.

Megjegyzések

Bírálja felül ezt a metódust, ha egy elemleírásnak adott menüelemekkel kapcsolatos információkat szeretne megadni. Az alapértelmezett implementáció nem végez semmit.

CMDIFrameWndEx::OnMoveMiniFrame

A keretrendszer meghívta, hogy helyezzen át egy minikeretablakot.

virtual BOOL OnMoveMiniFrame(CWnd* pFrame);

Paraméterek

pFrame
[in] Mutató egy minikeretes ablakhoz.

Visszaadott érték

TRUE ha a metódus sikeres, ellenkező esetben FALSE.

CMDIFrameWndEx::OnSetPreviewMode

Beállítja az alkalmazás fő keretablakának nyomtatási-előnézeti módját.

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

Paraméterek

bPreview
[in] Ha TRUE, a nyomtatási kép módot állítja be. Ha FALSE, megszakítja az előnézeti módot.

pState
[in] Egy struktúra mutatója CPrintPreviewState .

Megjegyzések

Ez a metódus felülbírálja a parancsot CFrameWnd::OnSetPreviewMode.

CMDIFrameWndEx::OnShowCustomizePane

A keretrendszer meghívta a Gyors testreszabás panel aktiválásakor.

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

Paraméterek

pMenuPane
[in] Mutató a Gyors testreszabás panelre.

uiToolbarID
[in] A testre szabandó eszköztár vezérlőazonosítója.

Visszaadott érték

Ez a metódus mindig TRUEad vissza.

Megjegyzések

A Gyors testreszabás panel egy menü, amely akkor nyílik meg, amikor a felhasználó a Testreszabás gombra kattint egy eszköztáron.

Felülbírálja ezt a metódust egy származtatott osztályban, hogy módosításokat hajtson végre a Gyors testreszabás panelen.

CMDIFrameWndEx::OnShowMDITabContextMenu

A keretrendszer meghívta, mielőtt megjelenik egy helyi menü az egyik lapon. Csak MDI-beli többlapos csoportokra érvényes.

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

Paraméterek

point
[in] A menü helye a képernyő koordinátáiban.

dwAllowedItems
[in] A jelzők bitenkénti "vagy" (|) kombinációja, amely azt jelzi, hogy az aktuális lapon milyen műveletek engedélyezettek:

  • AFX_MDI_CREATE_VERT_GROUP - függőleges tabulátorcsoportot hozhat létre.
  • AFX_MDI_CREATE_HORZ_GROUP - létrehozhat egy vízszintes tabulátorcsoportot.
  • AFX_MDI_CAN_MOVE_PREV - áthelyezhet egy lapot az előző lapcsoportba.
  • AFX_MDI_CAN_MOVE_NEXT - áthelyezhet egy lapot a következő lapcsoportba.
  • AFX_MDI_CAN_BE_DOCKED - a többlapos dokumentumot dokkolt állapotra válthatja (csak a többlapos dokumentumok esetében).

bTabDrop
[in] TRUE a menü megjelenítéséhez húzza a lapot egy másik lapfülre. FALSE a menü helyi menüként való megjelenítéséhez az aktuálisan aktív lapon.

Visszaadott érték

Felülbírálja ezt a metódust egy CMDIFrameWndEx-származtatott osztályban.

Megjegyzések

Ha nem dolgozik fel OnShowMDITabContextMenu, a helyi menü nem jelenik meg. Ezt a függvényt az MFC alkalmazásvarázslója hozza létre az MDI lapozott csoportok funkció engedélyezésekor.

példa

Az alábbi példa bemutatja, hogyan OnShowMDITabContextMenu használható a VisualStudioDemo minta: MFC Visual Studio-alkalmazás.

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

A keretrendszer meghívta a panelek megjelenítésére vagy elrejtésére.

virtual BOOL OnShowPanes(BOOL bShow);

Paraméterek

bShow
[in] TRUE panelek megjelenítéséhez, FALSE panelek elrejtéséhez.

Visszaadott érték

TRUE ha a panelek állapota a metódus meghívása miatt megváltozik, FALSE ha a panelek már a megadott bShowállapotban vannak. Ha például a panelek rejtettek és bShow vannak FALSE, akkor a Visszatérés érték a következő FALSE.

Megjegyzések

Az alapértelmezett implementáció eltávolítja az eszköztárat a felső szintű keretablakból.

Ha CDockingManager::m_bHideDockingBarsInContainerMode ez ( TRUE az alapértelmezett), az összes dokkolópanel el lesz rejtve.

CMDIFrameWndEx::OnShowPopupMenu

A keretrendszer meghívta, amikor megnyit egy előugró menüt.

virtual BOOL OnShowPopupMenu(CMFCPopupMenu*);

Visszaadott érték

TRUE ha az előugró menüt meg szeretné jeleníteni. Ellenkező esetben FALSE. Az alapértelmezett implementáció ad TRUEvissza.

Megjegyzések

Bírálja felül ezt a módszert, ha speciális feldolgozást szeretne implementálni az előugró menü aktiválásakor. Ha például színes menügombokra szeretné módosítani a normál menüelemeket, állítsa be a szakadósávokat stb.

Az alapértelmezett implementáció nem végez semmit.

CMDIFrameWndEx::OnSizeMDIClient

A keretrendszer meghívja, amikor az ügyfél MDI-ablakának mérete változik.

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

Paraméterek

rectOld
[in] Az MDI-ügyfélablak aktuális mérete.

rectNew
[in] Az MDI-ügyfélablak új mérete.

Megjegyzések

CMDIFrameWndEx::OnTearOffMenu

A keretrendszer meghívja, ha egy letört sávot tartalmazó menü aktiválódik.

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

Paraméterek

pMenuPopup
[in] Mutató az előugró menüre.

pBar
[in] Egy mutató a szakadó sávra.

Visszaadott érték

TRUE az előugró menü aktiválásának engedélyezése a letört sávon; egyéb esetben FALSE. Az alapértelmezett érték a TRUE.

Megjegyzések

Felülbírálja ezt a függvényt, ha speciális beállítást szeretne megvalósítani a letört sávhoz. Az alapértelmezett implementáció nem végez semmit.

CMDIFrameWndEx::OnUpdateFrameMenu

A keretrendszer meghívta a keretmenü frissítéséhez.

virtual void OnUpdateFrameMenu(HMENU hMenuAlt);

Paraméterek

hMenuAlt
[in] Egy menü fogópontja.

CMDIFrameWndEx::PaneFromPoint

A megadott pontot tartalmazó dokkolópanelt adja vissza.

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

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

Paraméterek

point
[in] A pont (a képernyő koordinátáiban).

nSensitivity
[in] Az egyes bejelölt panelek ablak téglalapja ezzel az értékkel minden irányban megnagyobbodik.

bExactBar
[in] Ha TRUE, a nSensitivity paraméter figyelmen kívül lesz hagyva.

pRTCBarType
[in] Ha nem NULL, akkor a metódus csak a megadott típusú ablaktáblákon ússzon át.

dwAlignment
[kifelé] Ha talál egy panelt, ez a paraméter határozza meg, hogy a panel melyik oldala áll legközelebb a megadott ponthoz.

Visszaadott érték

Egy dokkolópanelre mutató mutató, vagy NULL ha nincs vezérlőelem, amely a megadott pointpontot tartalmazza.

Megjegyzések

A rendszer átirányítja a hívást az CDockingManager osztályba. További információért lásd CDockingManager::ControlBarFromPoint.

CMDIFrameWndEx::RecalcLayout

A keretrendszer meghívta a keretablak elrendezésének újraszámításához.

virtual void RecalcLayout(BOOL bNotify = TRUE);

Paraméterek

bNotify
[in] Meghatározza, hogy a keretablak aktív helyszíni eleme értesítést kap-e az elrendezés módosításáról. Ha TRUEa rendszer értesíti az elemet, ellenkező esetben FALSE.

Megjegyzések

Ez a metódus felülbírálja a CFrameWnd::RecalcLayout parancsot.

CMDIFrameWndEx::RemovePaneFromDockManager

Törli a panel regisztrációját, és eltávolítja azt a dokkolókezelőből.

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

Paraméterek

pControlBar
[in] Az eltávolítandó ablaktáblára mutató mutató.

bDestroy
[in] TRUE az eltávolított panel elpusztításához. FALSE hogy ne pusztítsa el.

bAdjustLayout
[in] TRUE a dokkolás elrendezésének azonnali módosításához. Ha FALSEa beállítás csak akkor következik be, ha más okból újrarajzolás történik (a felhasználó átméretezi az ablakot, húzza a főkeretet stb.).

bAutoHide
[in] TRUE az automatikusan megjelenő ablaktáblák listájából való eltávolításához. FALSE az ablaktábla eltávolításához a normál ablaktáblák listájából.

pBarReplacement
[in] Az eltávolított ablaktáblát lecserélő ablaktábla mutatója.

Megjegyzések

A dokkolás elrendezésében való részvételhez minden panelt regisztrálnia kell a dokkolókezelővel. Panelek használata CMDIFrameWndEx::AddPane vagy CMDIFrameWndEx::InsertPane regisztrálása.

Ezt a módszert akkor használja, ha egy ablaktábla már nem része a keretablak dokkoló elrendezésének.

CMDIFrameWndEx::SaveMDIState

Menti az MDI lapozott csoportjainak aktuális elrendezését és a korábban megnyitott dokumentumok listáját.

virtual BOOL SaveMDIState(LPCTSTR lpszProfileName);

Paraméterek

lpszProfileName
[in] Megadja a profil nevét.

Visszaadott érték

TRUE ha a mentés sikeres volt; FALSE ha a mentés sikertelen volt.

Megjegyzések

Az MDI-lapok és -csoportok állapotának és a megnyitott dokumentumok listájának betöltéséhez vagy mentéséhez tegye a következőket:

  • Hívás SaveMDIState a főkeret bezárásakor
  • Hívás CMDIFrameWndEx::LoadMDIState a fő keret létrehozásakor. A hívás ajánlott helye a fő keret első megjelenítése előtt van.
  • Hívás CWinAppEx::EnableLoadWindowPlacement(FALSE); előtt pMainFrame->LoadFrame (IDR_MAINFRAME);
  • CWinAppEx::ReloadWindowPlacement(pMainFrame) Ezután hívja LoadMDIState meg a fő keretet a beállításjegyzékben tárolt pozícióban.
  • Felülbírálás GetDocumentName a CMDIChildWndEx– származtatott osztályban, ha az alkalmazás nem fájlként tárolt dokumentumokat jelenít meg. A visszaadott sztringet a rendszer dokumentumazonosítóként menti a beállításjegyzékbe. További információért lásd CMDIChildWndEx::GetDocumentName.
  • Felülbírálás CMDIFrameWndEx::CreateDocumentWindow a dokumentumok megfelelő létrehozásához a beállításjegyzékből való betöltésekor. A paraméter a CreateDocumentWindow korábban visszaadott sztring GetDocumentName .

példa

Az alábbi példa bemutatja, hogyan SaveMDIState használható a VisualStudioDemo minta: MFC Visual Studio-alkalmazás.

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

CMDIFrameWndEx::SetPrintPreviewFrame

Beállítja a nyomtatási képkeret ablakát.

void SetPrintPreviewFrame(CFrameWnd* pWnd);

Paraméterek

pWnd
[in] Mutató egy nyomtatási képkeret ablakára.

Megjegyzések

CMDIFrameWndEx::SetupToolbarMenu

Módosítja az eszköztár objektumát úgy, hogy a próbabábu elemeit felhasználó által definiált elemekre cseréli.

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

Paraméterek

menu
[in] A módosítani kívánt osztályobjektumra mutató hivatkozásCMenu.

uiViewUserToolbarCmdFirst
[in] Megadja az első felhasználó által definiált parancsot.

uiViewUserToolbarCmdLast
[in] Az utolsó felhasználó által definiált parancsot adja meg.

CMDIFrameWndEx::ShowFullScreen

A főkeretet normál módról teljes képernyős módra váltja.

void ShowFullScreen();

Megjegyzések

CMDIFrameWndEx::ShowPane

Megjeleníti vagy elrejti a megadott panelt.

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

Paraméterek

pBar
[in] Mutasson a megjelenítendő vagy rejtett ablaktáblára.

bShow
[in] TRUE a panel megjelenítéséhez. FALSE a panel elrejtéséhez.

bDelay
[in] TRUE a dokkoló elrendezés újraszámításának késleltetéséhez. FALSE a dokkoló elrendezés azonnali újraszámításához.

bActivate
[in] TRUE a panel aktívként való megjelenítéséhez. FALSE a panel inaktívként való megjelenítéséhez.

Megjegyzések

Hívja meg ezt a metódust a panel megjelenítéséhez vagy elrejtéséhez. Ne használja ShowWindow dokkolópanelekhez.

példa

Az alábbi példa bemutatja, hogyan ShowPane használható a VisualStudioDemo minta: MFC Visual Studio-alkalmazás.

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

Létrehoz egy CMFCWindowsManagerDialog mezőt, és megnyitja azt.

void ShowWindowsDialog();

példa

Az alábbi példa bemutatja, hogyan ShowWindowsDialog használható a VisualStudioDemo minta: MFC Visual Studio-alkalmazás.

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

CMDIFrameWndEx::TabbedDocumentToControlBar

A megadott többlapos dokumentumot dokkoló ablaktáblává alakítja.

virtual BOOL TabbedDocumentToControlBar(CMDIChildWndEx* pMDIChildWnd);

Paraméterek

pMDIChildWnd
Egy MDI gyermekablakra mutató mutató, amely egy dokkolópanelt tartalmaz.

Visszaadott érték

TRUE ha a metódus sikeres volt, FALSE hiba esetén.

Megjegyzések

Ezzel a módszerrel egy többlapos dokumentumot dokkoló ablaktáblává alakíthat át. A többlapos dokumentumnak a használatával CMDIFrameWndEx::ControlBarToTabbedDocumentkell létrejönnie.

példa

Az alábbi példa bemutatja, hogyan TabbedDocumentToControlBar használható a VisualStudioDemo minta: MFC Visual Studio-alkalmazás.

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

   TabbedDocumentToControlBar(pMDIChild);
}

CMDIFrameWndEx::UpdateCaption

A keretrendszer meghívta az ablakkeret feliratának frissítéséhez.

void UpdateCaption();

Megjegyzések

CMDIFrameWndEx::UpdateMDITabbedBarsIcons

Beállítja az ikont minden MDI-lapozott panelhez.

void UpdateMDITabbedBarsIcons();

CMDIFrameWndEx::WinHelp

A keretrendszer meghívta a WinHelp-alkalmazás vagy a környezet súgójának elindításához.

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

Paraméterek

dwData
[in] A megadott súgótípushoz nCmdszükséges adatokat adja meg.

nCmd
[in] Megadja a kért súgó típusát. További információ a lehetséges értékekről és a dwData paraméterre gyakorolt hatásukról: WinHelp.

Megjegyzések

Ez a metódus felülbírálja a parancsot CWnd::WinHelp.

Lásd még

hierarchiadiagram
osztályok
CMDIFrameWnd osztály
CMDIChildWndEx osztály