Třída CMDIFrameWndEx
Rozšiřuje funkce CMDIFrameWnd
okna s rámečkem rozhraní MDI (Windows Multiple Document Interface).
Syntaxe
class CMDIFrameWndEx : public CMDIFrameWnd
Členové
Veřejné metody
Název | Popis |
---|---|
CMDIFrameWndEx::ActiveItemRecalcLayout |
Přepočítá rozložení aktivní položky. |
CMDIFrameWndEx::AddDockSite |
Tato metoda se nepoužívá. |
CMDIFrameWndEx::AddPane |
Zaregistruje podokno ve správci ukotvení. |
CMDIFrameWndEx::AdjustClientArea |
Zmenšuje oblast klienta tak, aby umožňovala ohraničení. |
CMDIFrameWndEx::AdjustDockingLayout |
Přepočítá rozložení všech ukotvených podoken. |
CMDIFrameWndEx::AreMDITabs |
Určuje, jestli je povolená funkce karet MDI nebo funkce Skupiny s kartami MDI. |
CMDIFrameWndEx::CanConvertControlBarToMDIChild |
Volal rozhraní, aby bylo možné určit, zda okno rámečku může převést ukotvené podokna na dokumenty s kartami. |
CMDIFrameWndEx::ControlBarToTabbedDocument |
Převede zadané ukotvené podokno na dokument s kartami. |
CMDIFrameWndEx::CreateDocumentWindow |
Vytvoří podřízené okno dokumentu. |
CMDIFrameWndEx::CreateNewWindow |
Volá se rozhraním pro vytvoření nového okna. |
CMDIFrameWndEx::CreateObject |
Používá se architekturou k vytvoření dynamické instance tohoto typu třídy. |
CMDIFrameWndEx::DockPane |
Ukotví zadané podokno do okna rámečku. |
CMDIFrameWndEx::DockPaneLeftOf |
Ukotví jedno podokno vlevo od jiného podokna. |
CMDIFrameWndEx::EnableAutoHidePanes |
Povolí režim automatického skrytí pro podokna, když jsou ukotvená na zadaných stranách okna hlavního rámce. |
CMDIFrameWndEx::EnableDocking |
Umožňuje ukotvení podoken, které patří do okna rámečku MDI. |
CMDIFrameWndEx::EnableFullScreenMainMenu |
Zobrazí nebo skryje hlavní nabídku v režimu celé obrazovky. |
CMDIFrameWndEx::EnableFullScreenMode |
Povolí režim zobrazení na celé obrazovce pro okno rámečku. |
CMDIFrameWndEx::EnableLoadDockState |
Povolí nebo zakáže načítání stavu ukotvení. |
CMDIFrameWndEx::EnableMDITabbedGroups |
Povolí nebo zakáže funkci MDI Tabbed Groups. |
CMDIFrameWndEx::EnableMDITabs |
Povolí nebo zakáže funkci karet MDI. Pokud je tato možnost povolená, zobrazí se v okně rámečku karta pro každé podřízené okno MDI. |
CMDIFrameWndEx::EnableMDITabsLastActiveActivation |
Určuje, jestli má být aktivována poslední aktivní karta, když uživatel zavře aktuální kartu. |
CMDIFrameWndEx::EnablePaneMenu |
Povolí nebo zakáže automatické vytváření a správu místní nabídky podokna, která zobrazuje seznam podoken aplikací. |
CMDIFrameWndEx::EnableWindowsDialog |
Vloží položku nabídky, jejíž ID příkazu volá CMFCWindowsManagerDialog dialogové okno. |
CMDIFrameWndEx::GetActivePopup |
Vrátí ukazatel na aktuálně zobrazenou místní nabídku. |
CMDIFrameWndEx::GetPane |
Vrátí ukazatel na podokno se zadaným ID ovládacího prvku. |
CMDIFrameWndEx::GetDefaultResId |
Vrátí ID sdílených prostředků okna rámce MDI. |
CMDIFrameWndEx::GetMDITabGroups |
Vrátí seznam oken s kartami MDI. |
CMDIFrameWndEx::GetMDITabs |
Vrátí odkaz na podtržené okno s kartami. |
CMDIFrameWndEx::GetMDITabsContextMenuAllowedItems |
Vrátí kombinaci příznaků, které určují, jaké položky místní nabídky jsou platné, když je povolena funkce MDI Tabbed Groups. |
CMDIFrameWndEx::GetMenuBar |
Vrátí ukazatel na objekt řádku nabídek připojený k oknem rámečku. |
CMDIFrameWndEx::GetRibbonBar |
Načte ovládací prvek pásu karet pro rámeček. |
CMDIFrameWndEx::GetTearOffBars |
Vrátí seznam odvozených CPane objektů, které jsou ve stavu odtrhání. |
CMDIFrameWndEx::GetThisClass |
Volá se rozhraním k získání ukazatele na CRuntimeClass objekt, který je přidružen k tomuto typu třídy. |
CMDIFrameWndEx::GetToolbarButtonToolTipText |
Volá se rozhraním, když aplikace zobrazí popis tlačítka panelu nástrojů. |
CMDIFrameWndEx::InsertPane |
Zaregistruje zadané podokno ve správci ukotvení. |
CMDIFrameWndEx::IsFullScreen |
Určuje, zda je okno rámečku v režimu celé obrazovky. |
CMDIFrameWndEx::IsMDITabbedGroup |
Určuje, jestli je povolená funkce MDI Tabbed Groups. |
CMDIFrameWndEx::IsMemberOfMDITabGroup |
Určuje, zda je zadané okno s kartami v seznamu oken, která jsou ve skupinách karet MDI. |
CMDIFrameWndEx::IsMenuBarAvailable |
Určuje, jestli má okno rámečku řádek nabídek. |
CMDIFrameWndEx::IsPointNearDockSite |
Určuje, zda je zadaný bod blízko doku. |
CMDIFrameWndEx::IsPrintPreview |
Určuje, zda je okno rámečku v režimu náhledu tisku. |
CMDIFrameWndEx::LoadFrame |
Vytvoří okno rámce z informací o prostředku. (Přepsání CMDIFrameWnd::LoadFrame .) |
CMDIFrameWndEx::LoadMDIState |
Načte zadané rozložení skupin s kartami MDI a seznam dříve otevřených dokumentů. |
CMDIFrameWndEx::MDITabMoveToNextGroup |
Přesune aktivní kartu z aktuálně aktivního okna s kartami do další nebo předchozí skupiny karet. |
CMDIFrameWndEx::MDITabNewGroup |
Vytvoří novou skupinu s kartami, která má jedno okno. |
CMDIFrameWndEx::NegotiateBorderSpace |
Vyjedná ohraničení v okně rámečku během místní aktivace OLE. |
CMDIFrameWndEx::OnCloseDockingPane |
Volá se rozhraním, když uživatel klikne na tlačítko Zavřít v dokovatelném podokně. |
CMDIFrameWndEx::OnCloseMiniFrame |
Volá se rozhraním, když uživatel klikne na tlačítko Zavřít v plovoucím mini rámečku okna. |
CMDIFrameWndEx::OnClosePopupMenu |
Volá se rozhraním, když aktivní místní nabídka zpracuje WM_DESTROY zprávu. |
CMDIFrameWndEx::OnCmdMsg |
Volá se rozhraním ke směrování a odesílání zpráv příkazů a k aktualizaci objektů uživatelského rozhraní. |
CMDIFrameWndEx::OnDrawMenuImage |
Volá se rozhraním při vykreslení obrázku přidruženého k položce nabídky. |
CMDIFrameWndEx::OnDrawMenuLogo |
Volá se rozhraním při CMFCPopupMenu zpracování WM_PAINT zprávy. |
CMDIFrameWndEx::OnEraseMDIClientBackground |
Volá se rozhraním, když okno rámce MDI zpracuje WM_ERASEBKGND zprávu. |
CMDIFrameWndEx::OnMenuButtonToolHitTest |
Volá se rozhraním, když CMFCToolBarButton objekt zpracuje WM_NCHITTEST zprávu. |
CMDIFrameWndEx::OnMoveMiniFrame |
Volá se rozhraním pro přesunutí okna s mini rámečkem. |
CMDIFrameWndEx::OnSetPreviewMode |
Nastaví režim tisku a náhledu okna hlavního rámce aplikace. (Přepsání CFrameWnd::OnSetPreviewMode .) |
CMDIFrameWndEx::OnShowCustomizePane |
Volá se rozhraním při aktivaci podokna Rychlé přizpůsobení. |
CMDIFrameWndEx::OnShowMDITabContextMenu |
Volané architekturou, když by se měla na jedné z karet zobrazit místní nabídka. (Platné pouze pro skupiny s kartami MDI.) |
CMDIFrameWndEx::OnShowPanes |
Volá se rozhraním pro zobrazení nebo skrytí podoken. |
CMDIFrameWndEx::OnShowPopupMenu |
Volá se rozhraním při aktivaci místní nabídky. |
CMDIFrameWndEx::OnSizeMDIClient |
Volá se rozhraním, když se mění velikost okna MDI klienta. |
CMDIFrameWndEx::OnTearOffMenu |
Volá se rozhraním, když je aktivována nabídka s odtrženou lištou. |
CMDIFrameWndEx::OnUpdateFrameMenu |
Volá se rozhraním, aby se aktualizovala nabídka rámečku. (Přepsání CMDIFrameWnd::OnUpdateFrameMenu .) |
CMDIFrameWndEx::PaneFromPoint |
Vrátí dokovací podokno, které obsahuje zadaný bod. |
CMDIFrameWndEx::PreTranslateMessage |
CWinApp Třída slouží k překladu zpráv oken před jejich odesláním TranslateMessage do funkcí a DispatchMessage funkcí systému Windows. (Přepsání CMDIFrameWnd::PreTranslateMessage .) |
CMDIFrameWndEx::RecalcLayout |
Volá se rozhraním pro přepočet rozložení okna rámečku. (Přepsání CFrameWnd::RecalcLayout .) |
CMDIFrameWndEx::RemovePaneFromDockManager |
Zruší registraci podokna a odebere ho ze správce ukotvení. |
CMDIFrameWndEx::SaveMDIState |
Uloží aktuální rozložení skupin s kartami MDI a seznam dříve otevřených dokumentů. |
CMDIFrameWndEx::SetPrintPreviewFrame |
Nastaví okno rámečku náhledu tisku. |
CMDIFrameWndEx::SetupToolbarMenu |
Upraví objekt panelu nástrojů vyhledáním fiktivních položek a jejich nahrazením zadanými uživatelem definovanými položkami. |
CMDIFrameWndEx::ShowFullScreen |
Přepne hlavní rámec z běžného režimu do režimu celé obrazovky. |
CMDIFrameWndEx::ShowPane |
Zobrazí nebo skryje zadané podokno. |
CMDIFrameWndEx::ShowWindowsDialog |
CMFCWindowsManagerDialog Vytvoří pole a otevře ho. |
CMDIFrameWndEx::TabbedDocumentToControlBar |
Převede zadaný dokument s kartami na ukotvené podokno. |
CMDIFrameWndEx::UpdateCaption |
Volá se rozhraním pro aktualizaci titulku rámečku okna. |
CMDIFrameWndEx::UpdateMDITabbedBarsIcons |
Nastaví ikonu pro každé podokno s kartami MDI. |
CMDIFrameWndEx::WinHelp |
Volá se rozhraním pro zahájení aplikace WinHelp nebo kontextové nápovědy. (Přepsání CWnd::WinHelp .) |
Datové členy
Název | Popis |
---|---|
CMDIFrameWndEx::m_bCanConvertControlBarToMDIChild |
Určuje, zda lze dokovací podokna převést na podřízená okna MDI. |
CMDIFrameWndEx::m_bDisableSetRedraw |
Povolí nebo zakáže optimalizaci překreslení pro podřízená okna MDI. |
Poznámky
Pokud chcete využít rozšířené funkce přizpůsobení v aplikaci MDI, odvozujte třídu oken oken MDI aplikace namísto CMDIFrameWndEx
CMDIFrameWnd
.
Příklad
Následující příklad odvozuje třídu z CMDIFrameWndEx
. Tento fragment kódu pochází z ukázky DrawClient: Aplikace pro kreslení objektů OLE založená na pásu karet MFC.
class CMainFrame : public CMDIFrameWndEx
{
DECLARE_DYNAMIC(CMainFrame)
public:
struct XStyle
{
COLORREF clrFill;
COLORREF clrLine;
};
public:
CMainFrame();
// Attributes
public:
CMFCRibbonBar *GetRibbonBar() { return &m_wndRibbonBar; }
// Operations
public:
void UpdateUI(CDrawView *pCurrView);
void UpdateContextTab(CDrawView *pCurrView);
void UpdateContextTabFromObject(CDrawObjList &list);
COLORREF GetColorFromColorButton(int nButtonID);
int GetWeightFromLineWeight(int nButtonID);
BOOL GetStyleFromStyles(XStyle &style);
void SetRibbonContextCategory(UINT uiCategoryID);
void ActivateRibbonContextCategory(UINT uiCategoryID);
// Implementation
public:
virtual ~CMainFrame();
#ifdef _DEBUG
virtual void AssertValid() const;
virtual void Dump(CDumpContext &dc) const;
#endif
protected:
// control bar embedded members
CMFCRibbonStatusBar m_wndStatusBar;
CMFCRibbonBar m_wndRibbonBar;
CMFCRibbonApplicationButton m_MainButton;
// panel images
CMFCToolBarImages m_PanelImages;
// Document colors for demo:
CList<COLORREF, COLORREF> m_lstMainColors;
CList<COLORREF, COLORREF> m_lstAdditionalColors;
CList<COLORREF, COLORREF> m_lstStandardColors;
// Generated message map functions
protected:
//{{AFX_MSG(CMainFrame)
afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
afx_msg void OnAppLook(UINT id);
afx_msg void OnUpdateAppLook(CCmdUI *pCmdUI);
afx_msg void OnWindowManager();
afx_msg void OnMdiMoveToNextGroup();
afx_msg void OnMdiMoveToPrevGroup();
afx_msg void OnMdiNewHorzTabGroup();
afx_msg void OnMdiNewVertGroup();
afx_msg void OnMdiCancel();
afx_msg LRESULT OnRibbonCustomize(WPARAM wp, LPARAM lp);
afx_msg LRESULT OnHighlightRibbonListItem(WPARAM wp, LPARAM lp);
afx_msg void OnToolsOptions();
afx_msg void OnDummy();
afx_msg void OnSysColorChange();
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
virtual BOOL OnShowMDITabContextMenu(CPoint point, DWORD dwAllowedItems, BOOL bDrop);
virtual BOOL OnShowPopupMenu(CMFCPopupMenu *pMenuPopup);
void ShowOptions(int nPage);
void CreateDocumentColors();
private:
BOOL CreateRibbonBar();
BOOL CreateStatusBar();
void InitMainButton();
void InitHomeCategory();
void InitViewCategory();
void InitTabButtons();
void AddContextTab_Format();
void AdjustObjectSubmenu(CMFCPopupMenu *pMenuPopup);
void UpdateStatusBarCountPane(int nID, CString strText, int nCount);
UINT m_nAppLook;
};
Hierarchie dědičnosti
Požadavky
Záhlaví: afxMDIFrameWndEx.h
CMDIFrameWndEx::ActiveItemRecalcLayout
Přepočítá rozložení aktivní položky.
void ActiveItemRecalcLayout();
CMDIFrameWndEx::AddPane
Zaregistruje podokno ve správci ukotvení.
BOOL AddPane(
CBasePane* pControlBar,
BOOL bTail=TRUE);
Parametry
pControlBar
[v] Ukazatel na podokno, které chcete zaregistrovat.
bTail
[v] Určuje, jestli chcete toto podokno přidat na konec seznamu.
Vrácená hodnota
Vrátí nenulovou hodnotu, pokud je podokno úspěšně zaregistrováno. Vrátí hodnotu 0, pokud je podokno již zaregistrováno u správce ukotvení.
Poznámky
Každé podokno musí být zaregistrované ve CDockingManager
třídě , aby se mohlo zúčastnit rozložení ukotvení. Pomocí této metody upozorněte správce dokování, že chcete ukotvit konkrétní podokno. Jakmile je toto podokno zaregistrované, správce ukotvení ho zarovná na základě nastavení zarovnání a umístění v seznamu podoken udržovaných správcem ukotvení.
CMDIFrameWndEx::AdjustClientArea
Zmenšuje oblast klienta tak, aby umožňovala ohraničení.
virtual void AdjustClientArea();
CMDIFrameWndEx::AdjustDockingLayout
Přepočítá rozložení všech ukotvených podoken.
virtual void AdjustDockingLayout(HDWP hdwp=NULL);
Parametry
hdwp
[v] Identifikuje strukturu s více okny. Tuto hodnotu můžete získat voláním BeginDeferWindowPos
.
Poznámky
Voláním této členské funkce přepočítejte rozložení všech podoken ukotvených do okna rámečku.
CMDIFrameWndEx::AreMDITabs
Určuje, jestli je povolená funkce karet MDI nebo funkce skupin s kartami MDI.
BOOL AreMDITabs(int* pnMDITabsType=NULL) const;
Parametry
pnMDITabsType
[ven] Ukazatel na celočíselnou proměnnou označující, které funkce jsou povolené:
- 0: Všechny funkce jsou zakázané.
- 1: Karty MDI jsou povolené.
- 2: Skupiny s kartami MDI jsou povolené.
Vrácená hodnota
Vrátí TRUE
, pokud jsou povoleny karty MDI nebo skupiny s kartami MDI.
Vrátí, FALSE
pokud není povolená žádná z výše uvedených funkcí.
Poznámky
Pomocí této funkce můžete určit, jestli jsou pro okno rámečku povoleny karty MDI nebo skupiny karet MDI. Slouží CMDIFrameWndEx::EnableMDITabs
k povolení nebo zakázání funkce karet MDI.
Slouží CMDIFrameWndEx::EnableMDITabbedGroups
k povolení nebo zakázání funkce skupin s kartami MDI.
CMDIFrameWndEx::CanConvertControlBarToMDIChild
Volal rozhraní, aby bylo možné určit, zda okno rámečku může převést ukotvené podokna na dokumenty s kartami
virtual BOOL CanConvertControlBarToMDIChild();
Návratová hodnota
Vrátí TRUE
, pokud okno rámečku může převést ukotvené podokna na dokumenty s kartami; jinak vrátí FALSE
.
Poznámky
Přepište tuto metodu v odvozené třídě a vraťte TRUE
se, abyste umožnili převod ukotvených podoken na dokumenty s kartami. Alternativně můžete nastavit CMDIFrameWndEx::m_bCanConvertControlBarToMDIChild
hodnotu TRUE
.
CMDIFrameWndEx::ControlBarToTabbedDocument
Převede zadané ukotvené podokno na dokument s kartami.
virtual CMDIChildWndEx* ControlBarToTabbedDocument(CDockablePane* pBar);
Parametry
pBar
Ukazatel na ukotvené podokno, které chcete převést.
Návratová hodnota
Vrátí ukazatel na nové podřízené okno MDI, které obsahuje dokovací podokno.
Poznámky
Tato metoda převede ukotvené podokno na dokument s kartami. Při volání této metody vytvoří architektura CMDIChildWndEx
objekt třídy , odebere dokovací podokno ze správce dokování a přidá dokovací podokno do nového podřízeného okna MDI. Podřízené okno MDI změní velikost ukotveného podokna tak, aby pokrývala celou oblast klienta.
CMDIFrameWndEx::CreateDocumentWindow
Vytvoří podřízené okno dokumentu.
virtual CMDIChildWndEx* CreateDocumentWindow(
LPCTSTR lpcszDocName,
CObject* pObj);
Parametry
lpcszDocName
[v] Textový řetězec, který obsahuje identifikátor dokumentu. Obvykle se jedná o úplnou cestu k souboru dokumentu.
pObj
[v] Ukazatel na uživatelem definovaný objekt. Vývojář může například vytvořit datovou strukturu specifickou pro aplikaci popisující dokument a inicializovat dokument při spuštění.
Vrácená hodnota
Ukazatel na CMDIChildWndEx
.
Poznámky
Architektura volá tuto metodu při načtení seznamu dokumentů dříve uložených v registru.
Tuto metodu přepište, aby se při načítání dokumentů z registru vytvořily dokumenty.
Příklad
Následující příklad ukazuje, jak CreateDocumentWindow
se používá v ukázce VisualStudioDemo: MFC Visual Studio Application.
V tomto příkladu g_strStartViewName
může být název "virtuálního dokumentu" (například "Úvodní stránka"), který není načten ze souboru disku. Proto potřebujeme speciální zpracování, abychom tento případ zvládli.
CMainFrame::CMainFrame()
{
CMFCPopupMenu::SetForceShadow(TRUE);
m_bCanConvertControlBarToMDIChild = TRUE;
}
CMDIFrameWndEx::CreateNewWindow
Volá se rozhraním pro vytvoření nového okna.
virtual CMDIChildWndEx* CreateNewWindow(
LPCTSTR lpcszDocName,
CObject* pObj);
Parametry
lpcszDocName
[v] Název dokumentu.
pObj
[v] Vyhrazeno pro budoucí použití.
Vrácená hodnota
Ukazatel na nové okno.
CMDIFrameWndEx::DockPane
Ukotví zadané podokno do okna rámečku.
void DockPane(
CBasePane* pBar,
UINT nDockBarID=0,
LPCRECT lpRect=NULL);
Parametry
pBar
[v] Ukazatel na podokno pro ukotvení.
nDockBarID
[v] Určuje, které strany okna rámečku se mají ukotvit.
lpRect
[v] Nepoužívá se.
Poznámky
Tato metoda ukotví zadané podokno na jednu ze stran okna rámečku, která byla zadána a CBasePane::EnableDocking
CMDIFrameWndEx::EnableDocking
byla volána.
Příklad
Následující příklad ukazuje použití DockPane
metody. Tento fragment kódu pochází z ukázky VisualStudioDemo: APLIKACE SADY MFC sady Visual Studio.
DockPane(&m_wndMenuBar);
DockPane(&m_wndToolBar);
DockPane(&m_wndPropertiesBar);
DockPane(&m_wndToolbarBuild);
CMDIFrameWndEx::DockPaneLeftOf
Ukotví jedno podokno vlevo od jiného podokna.
BOOL DockPaneLeftOf(
CPane* pBar,
CPane* pLeftOf);
Parametry
pBar
[v] Ukazatel na ukotvené podokno.
pLeftOf
[v] Ukazatel na podokno, které slouží jako web docku.
Vrácená hodnota
Vrátí TRUE
, pokud je operace úspěšná. V opačném případě vrátí FALSE
hodnotu .
Poznámky
Voláním této metody ukotvíte několik objektů podokna v předdefinovaném pořadí. Tato metoda ukotví podokno určené pBar
vlevo od podokna určeného pLeftOf
.
Příklad
Následující příklad ukazuje, jak DockPaneLeftOf
se metoda používá v sadě VisualStudioDemo Sample: MFC Visual Studio Application.
DockPane(&m_wndToolbarBuild);
DockPaneLeftOf(&m_wndToolbarEdit, &m_wndToolbarBuild);
CMDIFrameWndEx::EnableAutoHidePanes
Povolí režim automatického skrytí pro podokna, když jsou ukotvená na určených stranách okna hlavního rámečku.
BOOL EnableAutoHidePanes(DWORD dwDockStyle);
Parametry
dwDockStyle
[v] Určuje strany okna hlavního rámce, které budou povoleny. Použijte jeden nebo více následujících příznaků.
CBRS_ALIGN_LEFT
CBRS_ALIGN_RIGHT
CBRS_ALIGN_TOP
CBRS_ALIGN_BOTTOM
Vrácená hodnota
Voláním této funkce povolíte režim automatického skrytí pro podokna, když jsou ukotvená na zadaných stranách okna hlavního rámce.
Příklad
Následující příklad ukazuje, jak EnableAutoHidePanes
se metoda používá v sadě VisualStudioDemo Sample: MFC Visual Studio Application.
EnableAutoHidePanes(CBRS_ALIGN_ANY);
Poznámky
CMDIFrameWndEx::EnableDocking
Umožňuje ukotvení podoken, které patří do okna rámečku MDI.
BOOL EnableDocking(DWORD dwDockStyle);
Parametry
dwDockStyle
[v] Určuje styl ukotvení, který chcete použít.
Vrácená hodnota
Poznámky
Voláním této funkce povolíte ukotvení podoken, které patří objektu CMDIFrameWndEx
.
Příklad
Následující příklad ukazuje, jak EnableDocking
se metoda používá v sadě VisualStudioDemo Sample: MFC Visual Studio Application.
EnableDocking(CBRS_ALIGN_ANY);
CMDIFrameWndEx::EnableFullScreenMainMenu
Zobrazí nebo skryje hlavní nabídku v režimu celé obrazovky.
void EnableFullScreenMainMenu(BOOL bEnableMenu);
Parametry
bEnableMenu
[v] TRUE
zobrazení hlavní nabídky v režimu zobrazení na celé obrazovce nebo FALSE
skrytí.
Poznámky
CMDIFrameWndEx::EnableFullScreenMode
Povolí režim zobrazení na celé obrazovce pro okno rámečku.
void EnableFullScreenMode(UINT uiFullScreenCmd);
Parametry
uiFullScreenCmd
[v] ID příkazu, který povolí nebo zakáže režim zobrazení na celé obrazovce.
Poznámky
V režimu zobrazení na celé obrazovce jsou všechny dokovací řídicí panely, panely nástrojů a nabídky skryté a aktivní zobrazení se změní tak, aby zabíraly celou obrazovku. Když povolíte režim zobrazení na celé obrazovce, musíte zadat ID příkazu, který ho povolí nebo zakáže. Můžete volat EnableFullScreenMode
z funkce hlavního OnCreate
rámce. Když se okno rámečku přepne do režimu celé obrazovky, vytvoří architektura plovoucí panel nástrojů s jedním tlačítkem, které má zadané ID příkazu. Pokud chcete zachovat hlavní nabídku na obrazovce, zavolejte CMDIFrameWndEx::EnableFullScreenMainMenu
.
CMDIFrameWndEx::EnableLoadDockState
Povolí nebo zakáže načítání stavu ukotvení.
void EnableLoadDockState(BOOL bEnable = TRUE);
Parametry
bEnable
[v] TRUE
pokud chcete povolit načítání dokovacího stavu, FALSE
zakažte načítání stavu ukotvení.
Poznámky
CMDIFrameWndEx::EnableMDITabbedGroups
Povolí nebo zakáže funkci skupin s kartami MDI pro okno rámečku.
void EnableMDITabbedGroups(
BOOL bEnable,
const CMDITabInfo& params);
Parametry
bEnable
[v] Pokud je funkce skupin s kartami MDI povolená. Pokud TRUE
FALSE
je funkce skupin s kartami MDI zakázaná.
params
[v] Určuje parametry, které architektura platí pro podřízená okna vytvořená v klientské oblasti MDI.
Poznámky
Tuto metodu použijte k povolení nebo zakázání funkce skupin s kartami MDI. Tato funkce umožňuje aplikacím MDI zobrazit podřízená okna jako okna s kartami, která jsou zarovnaná svisle nebo vodorovně v klientské oblasti MDI. Skupiny oken s kartami jsou oddělené rozdělovači. Uživatel může změnit velikost skupin s kartami pomocí rozdělovače.
Uživatel může:
- Přetáhněte jednotlivé karty mezi skupinami.
- Přetažením jednotlivých karet na okraj okna vytvoříte nové skupiny.
- Pomocí místní nabídky přesuňte karty nebo vytvořte nové skupiny.
- Aplikace může uložit aktuální rozložení oken s kartami a seznam aktuálně otevřených dokumentů.
Pokud tuto metodu zavoláte s nastavenou bEnable
hodnotou FALSE
, params
bude ignorována.
I když už jsou skupiny s kartami MDI povolené, můžete tuto metodu znovu volat a upravit nastavení podřízených oken. Volejte metodu s nastavenou bEnable
na TRUE
a upravte členy objektu CMDITabInfo
, které jsou určeny parametrem params
.
Další informace o tom, jak používat skupiny s kartami MDI, naleznete v tématu MDI Tabbed Groups.
Příklad
Následující příklad ukazuje, jak EnableMDITabbedGroups
se používá v ukázce VisualStudioDemo: MFC Visual Studio Application.
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
Povolí nebo zakáže funkci karet MDI pro okno rámce MDI. Pokud je tato možnost povolená, zobrazí se v okně rámečku karta pro každé podřízené okno MDI.
void EnableMDITabs(
BOOL bEnable=TRUE,
BOOL bIcons=TRUE,
CMFCTabCtrl::Location tabLocation=CMFCTabCtrl::LOCATION_BOTTOM,
BOOL bTabCloseButton=FALSE,
CMFCTabCtrl::Style style=CMFCTabCtrl::STYLE_3D_SCROLLED,
BOOL bTabCustomTooltips=FALSE,
BOOL bActiveTabCloseButton=FALSE);
Parametry
bEnable
Určuje, jestli jsou povoleny karty.
bIcons
Určuje, jestli se ikony mají zobrazovat na kartách.
tabLocation
Určuje umístění popisků karet.
bTabCloseButton
Určuje, jestli se mají zobrazit tlačítka pro zavření tabulátoru.
style
Určuje styl karet. Slouží STYLE_3D_SCROLLED
pro běžné karty nebo STYLE_3D_ONENOTE
pro karty Microsoft OneNotu.
bTabCustomTooltips
Určuje, jestli jsou povolené vlastní popisy.
bActiveTabCloseButton
Pokud TRUE
se na aktivní kartě místo v pravém rohu oblasti karty zobrazí tlačítko Zavřít .
Poznámky
Voláním této metody povolíte nebo zakážete funkci karet MDI pro okno rámce MDI. Pokud je tato možnost povolená, zobrazí se všechna podřízená okna jako karty.
Popisky karet mohou být umístěny v horní nebo dolní části rámce v závislosti na nastavení parametru tabLocation
. Můžete zadat buď CMFCTabCtrl::LOCATION_BOTTOM
(výchozí nastavení), nebo CMFCTabCtrl::LOCATION_TOP
.
Pokud bTabCustomTooltips
ano TRUE
, AFX_WM_ON_GET_TAB_TOOLTIP
odešle se zpráva do okna hlavního rámce. Váš kód může tuto zprávu zpracovat a poskytnout rozhraní s vlastními popisy pro karty MDI.
Příklad
Následující příklad ukazuje, jak EnableMDITabs
se používá v ukázce MDITabsDemo: MFC Tabbed MDI Aplikace.
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
Určuje, zda má být poslední aktivní karta otevřena, když uživatel zavře aktuální kartu.
void EnableMDITabsLastActiveActivation(BOOL bLastActiveTab=TRUE);
Parametry
bLastActiveTab
[v] Pokud TRUE
povolíte aktivaci poslední aktivní karty. Pokud FALSE
, zakažte aktivaci poslední aktivní karty.
Poznámky
Když je aktivní karta zavřená, můžete kartu otevřít dvěma způsoby:
- Aktivujte další kartu.
- Aktivujte dříve aktivní kartu.
Výchozí implementace používá první způsob.
Slouží EnableMDITabsLastActiveActivation
k povolení druhého způsobu aktivace tabulátoru. Emuluje způsob, jakým systém Windows otevírá podřízená okna MDI.
CMDIFrameWndEx::EnablePaneMenu
Povolí nebo zakáže automatické vytváření a správu místní nabídky podokna, která zobrazuje seznam podoken aplikací.
void EnablePaneMenu(
BOOL bEnable,
UINT uiCustomizeCmd,
const CString& strCustomizeLabel,
UINT uiViewToolbarsMenuEntryID,
BOOL bContextMenuShowsToolbarsOnly=FALSE,
BOOL bViewMenuShowsToolbarsOnly=FALSE);
Parametry
bEnable
[v] Je-li TRUE
povolena automatická manipulace s nabídkou podokna; pokud FALSE
je automatické zpracování zakázané.
uiCustomizeCmd
[v] ID příkazu položky nabídky Přizpůsobit Tato položka nabídky se obvykle přidá na konec seznamu podoken.
strCustomizeLabel
[v] Text, který se má zobrazit pro položku nabídky Přizpůsobit (pro lokalizaci).
uiViewToolbarsMenuEntryID
[v] Určuje ID položky nabídky panelu nástrojů, která otevře nabídku podokna. Obvykle se jedná o podnabídku Panely nástrojů nabídky Zobrazení.
bContextMenuShowsToolbarsOnly
[v] Pokud TRUE
se v nabídce podokna zobrazí jenom seznam panelů nástrojů. Pokud FALSE
, nabídka zobrazí seznam panelů nástrojů a ukotvení pruhů.
bViewMenuShowsToolbarsOnly
[v] Pokud TRUE
se v nabídce podokna zobrazí jenom seznam panelů nástrojů. Pokud FALSE
, nabídka zobrazí seznam panelů nástrojů a ukotvení pruhů.
Poznámky
Místní nabídka podokna zobrazí seznam podoken aplikace a umožní uživateli zobrazit nebo skrýt jednotlivá podokna.
Příklad
Následující příklad ukazuje, jak EnablePaneMenu
se používá v ukázce VisualStudioDemo: MFC Visual Studio Application.
// Enable pane context menu(list of bars + customize command):
EnablePaneMenu(TRUE, ID_VIEW_CUSTOMIZE, _T("Customize..."), ID_VIEW_TOOLBARS, FALSE, TRUE);
CMDIFrameWndEx::EnableWindowsDialog
Vloží položku nabídky, jejíž ID příkazu volá CMFCWindowsManagerDialog
dialogové okno.
void EnableWindowsDialog(
UINT uiMenuId,
LPCTSTR lpszMenuText,
BOOL bShowAllways=FALSE,
BOOL bShowHelpButton=FALSE);
void EnableWindowsDialog(
UINT uiMenuId,
UINT uiMenuTextResId,
BOOL bShowAllways=FALSE,
BOOL bShowHelpButton=FALSE);
Parametry
uiMenuId
[v] Určuje ID prostředku nabídky.
lpszMenuText
[v] Určuje text položky.
bShowHelpButton
[v] Určuje, zda se má zobrazit tlačítko Nápověda v dialogovém okně správa systému Windows.
uiMenuTextResId
[v] Identifikátor prostředku řetězce, který obsahuje textový řetězec položky.
Poznámky
Tato metoda slouží k vložení položky nabídky, jejíž příkaz volá dialogové okno správy podřízených oken MDI ( CMFCWindowsManagerDialog
třída). Nová položka je vložena do nabídky určené .uiMenuId
Volání EnableWindowsDialog
při zpracování WM_CREATE
zprávy
Příklad
Následující příklad ukazuje, jak EnableWindowsDialog
se používá v ukázce VisualStudioDemo: MFC Visual Studio Application.
// Enable windows manager:
EnableWindowsDialog(ID_WINDOW_MANAGER, _T("Windows..."), TRUE);
CMDIFrameWndEx::GetActivePopup
Vrátí ukazatel na aktuálně zobrazenou místní nabídku.
CMFCPopupMenu* GetActivePopup() const;
Vrácená hodnota
Ukazatel na aktivní místní nabídku; NULL
pokud není aktivní žádná místní nabídka.
Poznámky
Tato funkce slouží k získání ukazatele na CMFCPopupMenu
objekt třídy , který je aktuálně zobrazen.
CMDIFrameWndEx::GetDefaultResId
Vrátí ID sdílených prostředků okna rámce MDI.
UINT GetDefaultResId() const;
Vrácená hodnota
Hodnota ID prostředku. 0, pokud okno rámečku nemá žádný řádek nabídek.
Poznámky
Tato metoda vrátí ID prostředku, které bylo zadáno při načtení CFrameWnd::LoadFrame
okna rámce MDI .
CMDIFrameWndEx::GetMDITabGroups
Vrátí seznam oken s kartami MDI.
const CObList& GetMDITabGroups() const;
Vrácená hodnota
Odkaz na CObList
objekt třídy , který obsahuje seznam oken s kartami. Neukládejte ani neupravujte seznam.
Poznámky
Tuto metodu použijte pro přístup k seznamu oken s kartami. Může být užitečné, pokud chcete změnit nebo dotazovat některé parametry jednotlivých oken s kartami.
CMDIFrameWndEx::GetMDITabs
Vrátí odkaz na podtržené okno s kartami.
CMFCTabCtrl& GetMDITabs();
Vrácená hodnota
Odkaz na podtržené okno s kartami.
CMDIFrameWndEx::GetMDITabsContextMenuAllowedItems
Vrátí kombinaci příznaků, které určují, jaké operace jsou platné, když je povolena funkce MDI Tabbed Groups.
DWORD GetMDITabsContextMenuAllowedItems();
Vrácená hodnota
Bitové "or" (|
) kombinace následujících příznaků:
AFX_MDI_CREATE_VERT_GROUP
– může vytvořit svislou skupinu karet.AFX_MDI_CREATE_HORZ_GROUP
- může vytvořit vodorovnou skupinu karet.AFX_MDI_CAN_MOVE_PREV
– může přesunout kartu do předchozí skupiny karet.AFX_MDI_CAN_MOVE_NEXT
– může přesunout kartu na další skupinu karet.
Poznámky
Pokud je povolená funkce Skupiny s kartami MDI, musíte vědět, jaké operace jsou povoleny na kartách konkrétního okna. Tato metoda analyzuje aktuální rozložení oken s kartami a vrací kombinaci příznaků, které lze použít k sestavení, například místní nabídky.
Novou skupinu svislých karet můžete vytvořit, když jsou všechna okna s kartami zarovnaná svisle nebo když je v něm jenom jedno okno s kartami.
Novou vodorovnou skupinu karet můžete vytvořit, když jsou všechna okna s kartami zarovnaná vodorovně nebo když je v něm jenom jedno okno s kartami.
Kartu můžete přesunout do předchozí skupiny jenom v případě, že je v okně s kartami více než jedna karta.
Kartu můžete přesunout do další skupiny jenom v případě, že je v okně s kartami více než jedna karta.
CMDIFrameWndEx::GetMenuBar
Vrátí ukazatel na objekt řádku nabídek připojený k oknem rámečku.
const CMFCMenuBar* GetMenuBar() const;
Vrácená hodnota
Ukazatel na objekt řádku nabídek.
CMDIFrameWndEx::GetPane
Vrátí ukazatel na podokno se zadaným ID ovládacího prvku.
CBasePane* GetPane(UINT nID);
Parametry
nID
[v] ID ovládacího prvku.
Vrácená hodnota
Ukazatel na podokno se zadaným ID ovládacího prvku, pokud existuje. V opačném případě hodnota NULL
.
CMDIFrameWndEx::GetRibbonBar
Načte ovládací prvek pásu karet pro rámeček.
CMFCRibbonBar* GetRibbonBar();
Vrácená hodnota
Ukazatel na CMFCRibbonBar
třídu rámce.
Poznámky
CMDIFrameWndEx::GetTearOffBars
Vrátí seznam odtržených nabídek.
const CObList& GetTearOffBars() const;
Vrácená hodnota
Odkaz na CObList
objekt třídy , který obsahuje kolekci ukazatelů na CPane
-odvozené objekty, které jsou ve stavu odtržování.
Poznámky
CMDIFrameWndEx
udržuje kolekci trhacích menu. Tuto metodu použijte k načtení odkazu na tento seznam.
CMDIFrameWndEx::GetToolbarButtonToolTipText
Volá se rozhraním, když aplikace zobrazí popis tlačítka panelu nástrojů.
virtual BOOL GetToolbarButtonToolTipText(
CMFCToolBarButton* pButton,
CString& strTTText);
Parametry
pButton
[v] Ukazatel na tlačítko panelu nástrojů
strTTText
[v] Text popisu, který se má zobrazit pro tlačítko.
Vrácená hodnota
TRUE
pokud byl zobrazen popis. FALSE
jinak.
Poznámky
CMDIFrameWndEx::InsertPane
Zaregistruje zadané podokno ve správci ukotvení.
BOOL InsertPane(
CBasePane* pControlBar,
CBasePane* pTarget,
BOOL bAfter=TRUE);
Parametry
pControlBar
[v] Ukazatel na podokno, které chcete vložit.
pTarget
[v] Ukazatel na podokno před nebo za něj, do kterého chcete podokno vložit.
bAfter
[v] Je-li TRUE
vložena pControlBar
za pTarget
. Je-li FALSE
vložena pControlBar
před pTarget
.
Vrácená hodnota
TRUE
pokud metoda úspěšně zaregistruje podokno, FALSE
pokud podokno již bylo zaregistrováno u dokovací správce.
Poznámky
Pomocí této metody řekněte dokovacímu správci o podokně určeném pomocí pControlBar
. Správce ukotvení toto podokno zarovná podle zarovnání a umístění podokna v interním seznamu správce ukotvení.
CMDIFrameWndEx::IsFullScreen
Určuje, zda je okno rámečku v režimu celé obrazovky.
BOOL IsFullScreen() const;
Vrácená hodnota
TRUE
je-li okno rámečku v režimu celé obrazovky; jinak FALSE
.
Poznámky
Režim zobrazení na celé obrazovce můžete nastavit voláním CMDIFrameWndEx::EnableFullScreenMode
metody.
CMDIFrameWndEx::IsMDITabbedGroup
Určuje, jestli je povolená funkce MDI Tabbed Groups.
BOOL IsMDITabbedGroup() const;
Vrácená hodnota
TRUE
pokud je povolená funkce MDI Tabbed Groups; jinak FALSE
.
Poznámky
Chcete-li zjistit, zda jsou povoleny běžné karty MDI nebo funkce SKUPINY s kartami MDI, použijte CMDIFrameWndEx::AreMDITabs
.
CMDIFrameWndEx::IsMemberOfMDITabGroup
Určuje, zda je zadané okno s kartami v seznamu oken, která jsou ve skupinách karet MDI.
BOOL IsMemberOfMDITabGroup(CWnd* pWnd);
Parametry
pWnd
[v] Ukazatel na okno s kartami
Vrácená hodnota
TRUE
Pokud je zadané okno s kartami v seznamu oken s kartami, která tvoří skupiny karet MDI. Jinak FALSE
.
CMDIFrameWndEx::IsMenuBarAvailable
Určuje, jestli má okno rámečku řádek nabídek.
BOOL IsMenuBarAvailable() const;
Vrácená hodnota
TRUE
pokud ukazatel na objekt řádku nabídek není NULL
; jinak FALSE
.
CMDIFrameWndEx::IsPointNearDockSite
Určuje, zda je zadaný bod blízko doku.
BOOL IsPointNearDockSite(
CPoint point,
DWORD& dwBarAlignment,
BOOL& bOuterEdge) const;
Parametry
point
[v] Zadaný bod v souřadnicích obrazovky.
dwBarAlignment
[v] Určuje, který okraj je bod blízko. Možné hodnoty jsou CBRS_ALIGN_LEFT
, CBRS_ALIGN_RIGHT
, CBRS_ALIGN_TOP
a CBRS_ALIGN_BOTTOM
bOuterEdge
[v] TRUE
je-li bod blízko vnějšího okraje dokovací lokality; FALSE
jinak.
Vrácená hodnota
TRUE
je-li bod blízko místa doku; jinak FALSE
.
Poznámky
Bod se nachází v blízkosti dokovací lokality, když je uvnitř citlivosti nastavené ve správci ukotvení. Výchozí citlivost je 15 pixelů.
CMDIFrameWndEx::IsPrintPreview
Určuje, zda je okno rámečku v režimu náhledu tisku.
BOOL IsPrintPreview();
Vrácená hodnota
TRUE
je-li okno rámečku v režimu náhledu tisku; v opačném případě . FALSE
Poznámky
CMDIFrameWndEx::LoadFrame
Vytvoří okno rámce z informací o prostředku.
virtual BOOL LoadFrame(
UINT nIDResource,
DWORD dwDefaultStyle = WS_OVERLAPPEDWINDOW | FWS_ADDTOTITLE,
CWnd* pParentWnd = NULL,
CCreateContext* pContext = NULL);
Parametry
nIDResource
[v] ID sdíleného prostředku přidruženého k oknem rámce.
dwDefaultStyle
[v] Styl okna rámečku.
pParentWnd
[v] Ukazatel na nadřazený rámec.
pContext
[v] Ukazatel na CCreateContext
strukturu. Tento parametr může být NULL
.
Vrácená hodnota
TRUE
pokud je metoda úspěšná, jinak FALSE
.
CMDIFrameWndEx::LoadMDIState
Načte zadané rozložení skupin s kartami MDI a seznam dříve otevřených dokumentů.
virtual BOOL LoadMDIState(LPCTSTR lpszProfileName);
Parametry
lpszProfileName
[v] Určuje název profilu.
Vrácená hodnota
TRUE
pokud zatížení proběhlo úspěšně; FALSE
pokud se načtení nezdařilo nebo se nenačtou žádná data.
Poznámky
Pokud chcete načíst nebo uložit stav karet a skupin MDI a seznam otevřených dokumentů, postupujte takto:
- Volání
CMDIFrameWndEx::SaveMDIState
při zavření hlavního rámce - Volání
CMDIFrameWndEx::LoadMDIState
při vytváření hlavního rámce Doporučené místo pro toto volání je před prvním zobrazením hlavního rámce.pMainFrame->LoadFrame (IDR_MAINFRAME);.
PředCWinAppEx::EnableLoadWindowPlacement
(FALSE);
přidánímCWinAppEx::ReloadWindowPlacement
(pMainFrame);
za volánímLoadMDIState
zobrazte hlavní rámec na pozici, která byla uložena v registru. - Přepsání
GetDocumentName
vCMDIChildWndEx
odvozené třídě, pokud vaše aplikace zobrazí dokumenty, které nejsou uloženy jako soubory. Vrácený řetězec se uloží do registru jako identifikátor dokumentu. Základní implementaceCMDIChildWndEx::GetDocumentName
vrátí hodnotu získanou zCDocument::GetPathName
. - Pokud chcete správně vytvářet dokumenty při načítání z registru, přepište
CMDIFrameWndEx::CreateDocumentWindow
je. Prvním parametrem je vrácený řetězecGetDocumentName
.
Příklad
Následující příklad ukazuje, jak LoadMDIState
se používá v ukázce VisualStudioDemo: MFC Visual Studio Application.
// 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
Přesune aktivní kartu z aktuálně aktivního okna s kartami do další nebo předchozí skupiny karet.
void MDITabMoveToNextGroup(BOOL bNext=TRUE);
Parametry
bNext
[v] Pokud TRUE
přesunete kartu do další skupiny s kartami. Pokud FALSE
ho přesunete do předchozí skupiny s kartami.
CMDIFrameWndEx::MDITabNewGroup
Vytvoří novou skupinu s kartami, která má jedno okno.
void MDITabNewGroup(BOOL bVert=TRUE);
Parametry
bVert
[v] Určuje nové zarovnání skupiny. Pokud TRUE
je nová skupina zarovnaná svisle. Pokud FALSE
je nová skupina zarovnaná vodorovně.
Poznámky
Pomocí této funkce můžete vytvořit nové okno s kartami (nová skupina s kartami) a přidat do ní první kartu.
Příklad
Následující příklad ukazuje, jak MDITabNewGroup
se používá v ukázce VisualStudioDemo: MFC Visual Studio Application.
void CMainFrame::OnMdiNewHorzTabGroup()
{
MDITabNewGroup(FALSE);
}
CMDIFrameWndEx::m_bCanConvertControlBarToMDIChild
Určuje, zda lze dokovací podokna převést na podřízená okna MDI.
BOOL m_bCanConvertControlBarToMDIChild;
Poznámky
Označuje, zda lze ukotvit ovládací panely lze převést na podřízená okna MDI. Pokud je TRUE
tento příznak , architektura zpracovává převod automaticky, když uživatel vybere příkaz Tabbed Document . Příznak je chráněn a je nutné explicitně povolit tuto možnost buď nastavením m_bCanConvertControlBarToMDIChild
v konstruktoru CMDIFrameWndEx
-odvozené třídy, nebo přepsáním CanConvertControlBarToMDIChild
.
Výchozí hodnota je FALSE
.
Příklad
Následující příklad ukazuje, jak m_bCanConvertControlBarToMDIChild
se používá v ukázce VisualStudioDemo: MFC Visual Studio Application.
CMainFrame::CMainFrame()
{
CMFCPopupMenu::SetForceShadow(TRUE);
m_bCanConvertControlBarToMDIChild = TRUE;
}
CMDIFrameWndEx::m_bDisableSetRedraw
Povolí nebo zakáže optimalizaci překreslení pro podřízená okna MDI.
AFX_IMPORT_DATA static BOOL m_bDisableSetRedraw;
Poznámky
Výchozí hodnota je TRUE
.
Tento příznak nastavte, FALSE
pokud chcete optimalizovat překreslení podřízených položek MDI. V tomto případě bude architektura volat SetRedraw (FALSE)
hlavní rámec při změně aktivní karty aplikace.
Tento příznak může způsobit nežádoucí účinky (například aplikace na pozadí, které se zviditelní). Proto doporučujeme změnit výchozí nastavení pouze v případě, že při aktivaci karty MDI dojde k znatelnému blikání.
CMDIFrameWndEx::NegotiateBorderSpace
Vyjedná ohraničení v okně rámečku během místní aktivace OLE.
virtual BOOL NegotiateBorderSpace(
UINT nBorderCmd,
LPRECT lpRectBorder);
Parametry
nBorderCmd
[v] Obsahuje jednu z následujících hodnot z výčtu CFrameWnd::BorderCmd
:
borderGet
= 1borderRequest
= 2borderSet
= 3
lpRectBorder
[in, out] Ukazatel na RECT
strukturu nebo CRect
objekt třídy , který určuje souřadnice ohraničení.
Vrácená hodnota
Nenulové, pokud byla metoda úspěšná; jinak 0.
Poznámky
Tato metoda je implementace vyjednávání o hraničním prostoru OLE.
CMDIFrameWndEx::OnCloseDockingPane
Volá se rozhraním, když uživatel klikne na tlačítko Zavřít v dokovatelném podokně.
virtual BOOL OnCloseDockingPane(CDockablePane* pWnd);
Parametry
pWnd
[v] Ukazatel na podokno, které se zavře.
Vrácená hodnota
TRUE
pokud lze ukotvit podokno zavřené. V opačném případě hodnota FALSE
.
Poznámky
Přepsat tuto metodu pro zpracování skrytí ukotvených podoken. Pokud chcete zabránit skrytí ukotveného podokna, vraťte FALSE
se.
Výchozí implementace nedělá nic a vrací TRUE
.
CMDIFrameWndEx::OnCloseMiniFrame
Volá se rozhraním, když uživatel klikne na tlačítko Zavřít v plovoucím minirámeček okně.
virtual BOOL OnCloseMiniFrame(CPaneFrameWnd*);
Parametry
pWnd
[v] Ukazatel na okno mini rámečku, které je zavřené.
Vrácená hodnota
TRUE
pokud lze okno s plovoucím mini rámečkem zavřít. V opačném případě hodnota FALSE
.
Poznámky
Přepsat tuto metodu pro zpracování skrytí plovoucích minirámeček oken. Pokud chcete zabránit skrytí plovoucího minirámečekového okna, vraťte FALSE
se.
Výchozí implementace nedělá nic a vrací TRUE
.
CMDIFrameWndEx::OnClosePopupMenu
Volá se rozhraním, když aktivní místní nabídka zpracuje WM_DESTROY
zprávu.
virtual void OnClosePopupMenu(CMFCPopupMenu* pMenuPopup);
Parametry
pMenuPopup
[v] Ukazatel na místní nabídku
Poznámky
Tuto metodu přepište, pokud chcete zpracovávat oznámení z CMFCPopupMenu
objektů třídy , které patří do okna rámce MDI, když tyto objekty zpracovávají WM_DESTROY
zprávy.
CMDIFrameWndEx::OnCmdMsg
Volá se rozhraním ke směrování a odesílání zpráv příkazů a k aktualizaci objektů uživatelského rozhraní.
virtual BOOL OnCmdMsg(
UINT nID,
int nCode,
void* pExtra,
AFX_CMDHANDLERINFO* pHandlerInfo);
Parametry
nID
[v] ID příkazu.
nCode
[v] Identifikuje kód oznámení příkazu. Další informace o hodnotách naleznete nCode
v tématu CCmdTarget::OnCmdMsg
.
pExtra
[v] Používá se podle hodnoty nCode
. Další informace o produktu naleznete v pExtra
tématu CCmdTarget::OnCmdMsg
.
pHandlerInfo
[in, out] Obvykle by tento parametr měl být NULL
. Pokud tomu tak není NULL
, OnCmdMsg
vyplňuje pTarget
místo pmf
pHandlerInfo
odeslání příkazu členy struktury.
Vrácená hodnota
Nenulové, pokud je zpráva zpracována; jinak 0.
CMDIFrameWndEx::OnDrawMenuImage
Volá se rozhraním při vykreslení obrázku přidruženého k položce nabídky.
virtual BOOL OnDrawMenuImage(
CDC* pDC,
const CMFCToolBarMenuButton* pMenuButton,
const CRect& rectImage);
Parametry
pDC
[v] Ukazatel na kontext zařízení
pMenuButton
[v] Ukazatel na tlačítko nabídky.
rectImage
[v] Ohraničující obdélník obrázku
Vrácená hodnota
TRUE
pokud metoda nakreslí obrázek. Výchozí implementace vrátí FALSE
.
Poznámky
Tuto metodu přepište, pokud chcete přizpůsobit vykreslování obrázků pro položky nabídky, které patří do řádku nabídek vlastněného CMDIFrameWndEx
-odvozený objekt. Výchozí implementace nic nedělá.
CMDIFrameWndEx::OnDrawMenuLogo
Volá se rozhraním při CMFCPopupMenu
zpracování WM_PAINT
zprávy.
virtual void OnDrawMenuLogo(
CDC*,
CMFCPopupMenu*,
const CRect&);
Poznámky
Přepsat tuto funkci tak, aby se v místní nabídce, která patří do řádku nabídek vlastněného objektem CMDIFrameWndEx
-odvozený, zobrazilo logo. Výchozí implementace nic nedělá.
CMDIFrameWndEx::OnEraseMDIClientBackground
Volá se rozhraním, když okno rámce MDI zpracuje WM_ERASEBKGND
zprávu.
virtual BOOL OnEraseMDIClientBackground(CDC*);
Vrácená hodnota
TRUE
pokud aplikace zpracuje zprávu a vymaže pozadí.
Poznámky
Tuto členovou funkci přepište, pokud chcete zpracovat WM_ERASEBKGND
zprávu v odvozené CMDIFrameWndEx
třídě.
CMDIFrameWndEx::OnMenuButtonToolHitTest
Volá se rozhraním, když CMFCToolBarButton
objekt zpracuje WM_NCHITTEST
zprávu.
virtual BOOL OnMenuButtonToolHitTest(
CMFCToolBarButton* pButton,
TOOLINFO* pTI);
Parametry
pButton
[v] Tlačítko panelu nástrojů
pTI
[ven] Ukazatel na TOOLINFO
strukturu
Vrácená hodnota
TRUE
pokud aplikace vyplní pTI
parametr. Výchozí implementace vrátí FALSE
.
Poznámky
Tuto metodu přepište, pokud chcete do popisu zadat informace o konkrétních položkách nabídky. Výchozí implementace nic nedělá.
CMDIFrameWndEx::OnMoveMiniFrame
Volá se rozhraním pro přesunutí okna s mini rámečkem.
virtual BOOL OnMoveMiniFrame(CWnd* pFrame);
Parametry
pFrame
[v] Ukazatel na okno s mini rámečkem
Vrácená hodnota
TRUE
pokud je metoda úspěšná, jinak FALSE
.
CMDIFrameWndEx::OnSetPreviewMode
Nastaví režim tisku a náhledu okna hlavního rámce aplikace.
virtual void OnSetPreviewMode(
BOOL bPreview,
CPrintPreviewState* pState);
Parametry
bPreview
[v] Pokud TRUE
nastavíte režim náhledu tisku. Pokud FALSE
, zruší režim náhledu.
pState
[v] Ukazatel na CPrintPreviewState
strukturu.
Poznámky
Tato metoda přepíše CFrameWnd::OnSetPreviewMode
.
CMDIFrameWndEx::OnShowCustomizePane
Volá se rozhraním při aktivaci podokna Rychlé přizpůsobení.
virtual BOOL OnShowCustomizePane(
CMFCPopupMenu* pMenuPane,
UINT uiToolbarID);
Parametry
pMenuPane
[v] Ukazatel na podokno Rychlé přizpůsobení
uiToolbarID
[v] ID ovládacího prvku panelu nástrojů, které chcete přizpůsobit.
Vrácená hodnota
Tato metoda vždy vrátí TRUE
.
Poznámky
Podokno Rychlé přizpůsobení je nabídka, která se otevře, když uživatel klikne na Přizpůsobit na panelu nástrojů.
Přepište tuto metodu v odvozené třídě, aby se změny v podokně Rychlé přizpůsobení.
CMDIFrameWndEx::OnShowMDITabContextMenu
Volané architekturou před zobrazením místní nabídky na jedné z karet. Platné pouze pro skupiny s kartami MDI.
virtual BOOL OnShowMDITabContextMenu(
CPoint point,
DWORD dwAllowedItems,
BOOL bTabDrop);
Parametry
point
[v] Umístění nabídky v souřadnicích obrazovky.
dwAllowedItems
[v] Bitové "or" (|
) kombinace příznaků, které označují, jaké akce jsou povoleny pro aktuální kartu:
AFX_MDI_CREATE_VERT_GROUP
– může vytvořit svislou skupinu karet.AFX_MDI_CREATE_HORZ_GROUP
- může vytvořit vodorovnou skupinu karet.AFX_MDI_CAN_MOVE_PREV
– může přesunout kartu do předchozí skupiny karet.AFX_MDI_CAN_MOVE_NEXT
– může přesunout kartu na další skupinu karet.AFX_MDI_CAN_BE_DOCKED
- přepněte dokument s kartami do ukotveného stavu (relevantní jenom pro dokumenty s kartami).
bTabDrop
[v] TRUE
zobrazení nabídky v důsledku přetažení karty do jiné skupiny záložek. FALSE
zobrazení nabídky jako místní nabídky na aktuálně aktivní kartě.
Vrácená hodnota
Přepsat tuto metodu v -odvozené CMDIFrameWndEx
třídě.
Poznámky
Pokud to nezpracujete OnShowMDITabContextMenu
, místní nabídka se nezobrazí. Tato funkce je generována Průvodce aplikací MFC při povolení funkce MDI Tabbed Groups.
Příklad
Následující příklad ukazuje, jak OnShowMDITabContextMenu
se používá v ukázce VisualStudioDemo: MFC Visual Studio Application.
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
Volá se rozhraním pro zobrazení nebo skrytí podoken.
virtual BOOL OnShowPanes(BOOL bShow);
Parametry
bShow
[v] TRUE
pokud chcete zobrazit podokna, FALSE
skryjte podokna.
Vrácená hodnota
TRUE
pokud se stav podoken změní v důsledku volání této metody, FALSE
pokud jsou podokna již ve stavu určeném bShow
. Pokud jsou například podokna skrytá a bShow
je FALSE
, vrátí se hodnota FALSE
.
Poznámky
Výchozí implementace odebere panel nástrojů z okna rámce nejvyšší úrovně.
Pokud CDockingManager::m_bHideDockingBarsInContainerMode
je TRUE
(výchozí), budou všechna ukotvená podokna skrytá.
CMDIFrameWndEx::OnShowPopupMenu
Volá se podle architektury, když otevře místní nabídku.
virtual BOOL OnShowPopupMenu(CMFCPopupMenu*);
Vrácená hodnota
TRUE
pokud se má zobrazit místní nabídka. V opačném případě hodnota FALSE
. Výchozí implementace vrátí TRUE
.
Poznámky
Tuto metodu přepište, pokud chcete při aktivaci místní nabídky implementovat speciální zpracování. Pokud například chcete změnit běžné položky nabídky na tlačítka barevných nabídek, nastavte odtržovací pruhy atd.
Výchozí implementace nic nedělá.
CMDIFrameWndEx::OnSizeMDIClient
Volá se rozhraním, když se mění velikost okna MDI klienta.
virtual void OnSizeMDIClient(
const CRect& rectOld,
const CRect& rectNew);
Parametry
rectOld
[v] Aktuální velikost okna klienta MDI.
rectNew
[v] Nová velikost okna klienta MDI.
Poznámky
CMDIFrameWndEx::OnTearOffMenu
Volá se rozhraním, když je aktivována nabídka s odtrženou lištou.
virtual BOOL OnTearOffMenu(
CMFCPopupMenu* pMenuPopup,
CPane* pBar);
Parametry
pMenuPopup
[v] Ukazatel na místní nabídku
pBar
[v] Ukazatel na odtrženou čáru.
Vrácená hodnota
TRUE
povolit aktivaci místní nabídky s odtrženým pruhem; jinak FALSE
. Výchozí hodnota je TRUE
.
Poznámky
Tuto funkci přepište, pokud chcete implementovat speciální nastavení pro odtrženou lištu. Výchozí implementace nic nedělá.
CMDIFrameWndEx::OnUpdateFrameMenu
Volá se rozhraním, aby se aktualizovala nabídka rámečku.
virtual void OnUpdateFrameMenu(HMENU hMenuAlt);
Parametry
hMenuAlt
[v] Popisovač nabídky.
CMDIFrameWndEx::PaneFromPoint
Vrátí dokovací podokno, které obsahuje zadaný bod.
CBasePane* PaneFromPoint(
CPoint point,
int nSensitivity,
bool bExactBar,
CRuntimeClass* pRTCBarType) const;
CBasePane* PaneFromPoint(
CPoint point,
int nSensitivity,
DWORD& dwAlignment,
CRuntimeClass* pRTCBarType) const;
Parametry
point
[v] Bod (v souřadnicích obrazovky).
nSensitivity
[v] Obdélník okna každého zaškrtnutého podokna se zvětší ve všech směrech touto hodnotou.
bExactBar
[v] Pokud TRUE
se nSensitivity
parametr ignoruje.
pRTCBarType
[v] Pokud není NULL
, metoda iteruje pouze podokna zadaného typu.
dwAlignment
[ven] Pokud se najde podokno, tento parametr určí, která strana podokna je nejblíže zadanému bodu.
Vrácená hodnota
Ukazatel na ukotvené podokno nebo NULL
pokud žádný ovládací prvek neobsahuje bod určený point
.
Poznámky
Volání je přesměrováno do CDockingManager
třídy. Další informace najdete na webu CDockingManager::ControlBarFromPoint
.
CMDIFrameWndEx::RecalcLayout
Volá se rozhraním pro přepočet rozložení okna rámečku.
virtual void RecalcLayout(BOOL bNotify = TRUE);
Parametry
bNotify
[v] Určuje, zda aktivní místní položka pro okno rámečku obdrží oznámení o změně rozložení. Je-li TRUE
položka oznámena; jinak FALSE
.
Poznámky
Tato metoda přepíše CFrameWnd::RecalcLayout.
CMDIFrameWndEx::RemovePaneFromDockManager
Zruší registraci podokna a odebere ho ze správce ukotvení.
void RemovePaneFromDockManager(
CBasePane* pControlBar,
BOOL bDestroy,
BOOL bAdjustLayout,
BOOL bAutoHide,
CBasePane* pBarReplacement);
Parametry
pControlBar
[v] Ukazatel na podokno, které chcete odebrat.
bDestroy
[v] TRUE
odstranění odstraněného podokna. FALSE
aby to nezničil.
bAdjustLayout
[v] TRUE
a upravte rozložení ukotvení okamžitě. Pokud FALSE
dojde k úpravě pouze v případě, že dojde k překreslení události z jiných důvodů (uživatel změní velikost okna, přetáhne hlavní rámec atd.).
bAutoHide
[v] TRUE
pokud chcete podokno odebrat ze seznamu automaticky skrytých podoken. FALSE
pokud chcete podokno odebrat ze seznamu běžných podoken.
pBarReplacement
[v] Ukazatel na podokno, které nahrazuje odebrané podokno.
Poznámky
Každé podokno musíte zaregistrovat u správce ukotvení, abyste se mohli podílet na rozložení ukotvení. Použijte CMDIFrameWndEx::AddPane
nebo CMDIFrameWndEx::InsertPane
zaregistrujte podokna.
Tuto metodu použijte, pokud podokno již není součástí ukotveného rozložení okna rámečku.
CMDIFrameWndEx::SaveMDIState
Uloží aktuální rozložení skupin s kartami MDI a seznam dříve otevřených dokumentů.
virtual BOOL SaveMDIState(LPCTSTR lpszProfileName);
Parametry
lpszProfileName
[v] Určuje název profilu.
Vrácená hodnota
TRUE
pokud uložení proběhlo úspěšně; FALSE
pokud se uložení nezdařilo.
Poznámky
Pokud chcete načíst nebo uložit stav karet a skupin MDI a seznam otevřených dokumentů, postupujte takto:
- Volání
SaveMDIState
při zavření hlavního rámce - Volání
CMDIFrameWndEx::LoadMDIState
při vytváření hlavního rámce Doporučené umístění pro toto volání je před prvním zobrazením hlavního rámce. - Volat
CWinAppEx::EnableLoadWindowPlacement(FALSE);
předpMainFrame->LoadFrame (IDR_MAINFRAME);
- Volání
CWinAppEx::ReloadWindowPlacement(pMainFrame)
poLoadMDIState
zobrazení hlavního rámce na pozici, která byla uložena v registru. - Přepsání
GetDocumentName
vCMDIChildWndEx
odvozené třídě, pokud vaše aplikace zobrazí dokumenty, které nejsou uloženy jako soubory. Vrácený řetězec se uloží do registru jako identifikátor dokumentu. Další informace najdete na webuCMDIChildWndEx::GetDocumentName
. - Přepište
CMDIFrameWndEx::CreateDocumentWindow
, aby se správně vytvářely dokumenty při jejich načtení z registru. ParametremCreateDocumentWindow
je řetězec, kterýGetDocumentName
se vrátil dříve.
Příklad
Následující příklad ukazuje, jak SaveMDIState
se používá v ukázce VisualStudioDemo: MFC Visual Studio Application.
void CMainFrame::OnClose()
{
SaveMDIState(theApp.GetRegSectionPath());
CMDIFrameWndEx::OnClose();
}
CMDIFrameWndEx::SetPrintPreviewFrame
Nastaví okno rámečku náhledu tisku.
void SetPrintPreviewFrame(CFrameWnd* pWnd);
Parametry
pWnd
[v] Ukazatel na okno rámečku náhledu tisku
Poznámky
CMDIFrameWndEx::SetupToolbarMenu
Upraví objekt panelu nástrojů nahrazením fiktivních položek uživatelem definovanými položkami.
void SetupToolbarMenu(
CMenu& menu,
const UINT uiViewUserToolbarCmdFirst,
const UINT uiViewUserToolbarCmdLast);
Parametry
menu
[v] Odkaz na CMenu
objekt třídy , který se má upravit.
uiViewUserToolbarCmdFirst
[v] Určuje první uživatelem definovaný příkaz.
uiViewUserToolbarCmdLast
[v] Určuje poslední uživatelem definovaný příkaz.
CMDIFrameWndEx::ShowFullScreen
Přepne hlavní rámec z běžného režimu do režimu celé obrazovky.
void ShowFullScreen();
Poznámky
CMDIFrameWndEx::ShowPane
Zobrazí nebo skryje zadané podokno.
void ShowPane(
CBasePane* pBar,
BOOL bShow,
BOOL bDelay,
BOOL bActivate);
Parametry
pBar
[v] Ukazatel na podokno, které se má zobrazit nebo skrýt
bShow
[v] TRUE
zobrazení podokna. FALSE
podokno skryjete.
bDelay
[v] TRUE
odložení přepočtu rozložení ukotvení. FALSE
a přepočítá rozložení ukotvení okamžitě.
bActivate
[v] TRUE
zobrazení podokna jako aktivního. FALSE
a zobrazí se podokno jako neaktivní.
Poznámky
Voláním této metody zobrazíte nebo skryjete podokno. Nepoužívejte ShowWindow
pro ukotvení podoken.
Příklad
Následující příklad ukazuje, jak ShowPane
se používá v ukázce VisualStudioDemo: MFC Visual Studio Application.
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
CMFCWindowsManagerDialog
Vytvoří pole a otevře ho.
void ShowWindowsDialog();
Příklad
Následující příklad ukazuje, jak ShowWindowsDialog
se používá v ukázce VisualStudioDemo: MFC Visual Studio Application.
void CMainFrame::OnWindowManager()
{
ShowWindowsDialog();
}
CMDIFrameWndEx::TabbedDocumentToControlBar
Převede zadaný dokument s kartami na ukotvené podokno.
virtual BOOL TabbedDocumentToControlBar(CMDIChildWndEx* pMDIChildWnd);
Parametry
pMDIChildWnd
Ukazatel na podřízené okno MDI, které obsahuje ukotvené podokno.
Vrácená hodnota
TRUE
pokud byla metoda úspěšná, FALSE
při selhání.
Poznámky
Pomocí této metody můžete převést dokument s kartami na ukotvené podokno. Dokument s kartami musí být vytvořen pomocí .CMDIFrameWndEx::ControlBarToTabbedDocument
Příklad
Následující příklad ukazuje, jak TabbedDocumentToControlBar
se používá v ukázce VisualStudioDemo: MFC Visual Studio Application.
void CMainFrame::OnMdiTabbedDocument()
{
CMDIChildWndEx* pMDIChild = DYNAMIC_DOWNCAST(CMDIChildWndEx, MDIGetActive());
if (pMDIChild == NULL)
{
ASSERT(FALSE);
return;
}
TabbedDocumentToControlBar(pMDIChild);
}
CMDIFrameWndEx::UpdateCaption
Volá se rozhraním pro aktualizaci titulku rámečku okna.
void UpdateCaption();
Poznámky
CMDIFrameWndEx::UpdateMDITabbedBarsIcons
Nastaví ikonu pro každé podokno s kartami MDI.
void UpdateMDITabbedBarsIcons();
CMDIFrameWndEx::WinHelp
Volá se rozhraním pro zahájení aplikace WinHelp nebo kontextové nápovědy.
virtual void WinHelp(
DWORD dwData,
UINT nCmd = HELP_CONTEXT);
Parametry
dwData
[v] Určuje data podle potřeby pro typ nápovědy určené parametrem nCmd
.
nCmd
[v] Určuje typ požadované nápovědy. Další informace o možných hodnotách a jejich vlivu na dwData
parametr naleznete v tématu WinHelp
.
Poznámky
Tato metoda přepíše CWnd::WinHelp
.
Viz také
Graf hierarchie
Třídy
Třída CMDIFrameWnd
Třída CMDIChildWndEx