Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
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
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_LEFTCBRS_ALIGN_RIGHTCBRS_ALIGN_TOPCBRS_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::SaveMDIStatea főkeret bezárásakor - Hívás
CMDIFrameWndEx::LoadMDIStatea fő keret létrehozásakor. A hívás ajánlott helye a főkeret első megjelenítése előtt van. HozzáadásCWinAppEx::EnableLoadWindowPlacement(FALSE);előttpMainFrame->LoadFrame (IDR_MAINFRAME);. Adja hozzáCWinAppEx::ReloadWindowPlacement(pMainFrame);a hívás után, hogyLoadMDIStatea fő keret a beállításjegyzékben tárolt pozícióban jelenjen meg. - Felülbírálás
GetDocumentNameaCMDIChildWndEx– 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ó egyCMDIChildWndEx::GetDocumentName, a rendszertőlCDocument::GetPathNamekapott értéket ad vissza. - Felülbírálás
CMDIFrameWndEx::CreateDocumentWindowa dokumentumok megfelelő létrehozásához, amikor betölti őket a beállításjegyzékből. Az első paraméter a visszaadott sztringGetDocumentName.
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.
CMDIFrameWndEx::OnDrawMenuLogo
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
SaveMDIStatea főkeret bezárásakor - Hívás
CMDIFrameWndEx::LoadMDIStatea 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őttpMainFrame->LoadFrame (IDR_MAINFRAME); -
CWinAppEx::ReloadWindowPlacement(pMainFrame)Ezután hívjaLoadMDIStatemeg a fő keretet a beállításjegyzékben tárolt pozícióban. - Felülbírálás
GetDocumentNameaCMDIChildWndEx– 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ásdCMDIChildWndEx::GetDocumentName. - Felülbírálás
CMDIFrameWndEx::CreateDocumentWindowa dokumentumok megfelelő létrehozásához a beállításjegyzékből való betöltésekor. A paraméter aCreateDocumentWindowkorábban visszaadott sztringGetDocumentName.
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