다음을 통해 공유


CMDIFrameWndEx 클래스

Windows MDI(다중 문서 인터페이스) 프레임 창의 CMDIFrameWnd기능을 확장합니다.

구문

class CMDIFrameWndEx : public CMDIFrameWnd

멤버

공용 메서드

이름 설명
CMDIFrameWndEx::ActiveItemRecalcLayout 현재 항목의 레이아웃을 다시 계산합니다.
CMDIFrameWndEx::AddDockSite 이 메서드는 사용되지 않습니다.
CMDIFrameWndEx::AddPane 도킹 관리자에 창을 등록합니다.
CMDIFrameWndEx::AdjustClientArea 테두리를 허용하도록 클라이언트 영역을 줄입니다.
CMDIFrameWndEx::AdjustDockingLayout 도킹된 모든 창의 레이아웃을 다시 계산합니다.
CMDIFrameWndEx::AreMDITabs MDI 탭 기능 또는 MDI 탭 그룹 기능을 사용할 수 있는지 여부를 확인합니다.
CMDIFrameWndEx::CanConvertControlBarToMDIChild 프레임 창이 도킹 창을 탭 문서로 변환할 수 있는지 여부를 결정하기 위해 프레임워크에서 호출됩니다.
CMDIFrameWndEx::ControlBarToTabbedDocument 지정한 도킹 창을 탭 문서로 변환합니다.
CMDIFrameWndEx::CreateDocumentWindow 자식 문서 창을 만듭니다.
CMDIFrameWndEx::CreateNewWindow 프레임워크에서 새 창을 만들기 위해 호출됩니다.
CMDIFrameWndEx::CreateObject 프레임워크에서 이 클래스 형식의 동적 인스턴스를 만드는 데 사용합니다.
CMDIFrameWndEx::DockPane 지정된 창을 프레임 창에 도킹합니다.
CMDIFrameWndEx::DockPaneLeftOf 창을 다른 창의 왼쪽에 도킹합니다.
CMDIFrameWndEx::EnableAutoHidePanes 기본 프레임 창의 지정된 측면에 도킹된 경우 창에 자동 숨기기 모드를 사용하도록 설정합니다.
CMDIFrameWndEx::EnableDocking MDI 프레임 창에 속하는 창의 도킹을 사용하도록 설정합니다.
CMDIFrameWndEx::EnableFullScreenMainMenu 주 메뉴를 전체 화면 모드로 표시하거나 숨깁니다.
CMDIFrameWndEx::EnableFullScreenMode 프레임 창에 전체 화면 모드를 사용하도록 설정합니다.
CMDIFrameWndEx::EnableLoadDockState 도킹 상태의 로드를 사용하거나 사용하지 않도록 설정합니다.
CMDIFrameWndEx::EnableMDITabbedGroups MDI 탭 그룹 기능을 사용하거나 사용하지 않도록 설정합니다.
CMDIFrameWndEx::EnableMDITabs MDI 탭 기능을 사용하거나 사용하지 않도록 설정합니다. 사용하도록 설정하면 프레임 창에 각 MDI 자식 창에 대한 탭이 표시됩니다.
CMDIFrameWndEx::EnableMDITabsLastActiveActivation 사용자가 현재 탭을 닫을 때 마지막 활성 탭을 활성화할지 여부를 지정합니다.
CMDIFrameWndEx::EnablePaneMenu 애플리케이션 창 목록을 표시하는 팝업 창 메뉴의 자동 생성 및 관리를 사용하거나 사용하지 않도록 설정합니다.
CMDIFrameWndEx::EnableWindowsDialog 명령 ID가 대화 상자를 호출하는 CMFCWindowsManagerDialog 메뉴 항목을 삽입합니다.
CMDIFrameWndEx::GetActivePopup 현재 표시된 팝업 메뉴에 대한 포인터를 반환합니다.
CMDIFrameWndEx::GetPane 지정된 컨트롤 ID가 있는 창에 대한 포인터를 반환합니다.
CMDIFrameWndEx::GetDefaultResId MDI 프레임 창의 공유 리소스 ID를 반환합니다.
CMDIFrameWndEx::GetMDITabGroups MDI 탭 창 목록을 반환합니다.
CMDIFrameWndEx::GetMDITabs 밑줄이 그은 탭 창에 대한 참조를 반환합니다.
CMDIFrameWndEx::GetMDITabsContextMenuAllowedItems MDI 탭 그룹 기능을 사용할 때 유효한 상황에 맞는 메뉴 항목을 결정하는 플래그 조합을 반환합니다.
CMDIFrameWndEx::GetMenuBar 프레임 창에 연결된 메뉴 모음 개체에 대한 포인터를 반환합니다.
CMDIFrameWndEx::GetRibbonBar 프레임의 리본 표시줄 컨트롤을 검색합니다.
CMDIFrameWndEx::GetTearOffBars 분리 상태에 있는 파생 개체의 CPane목록을 반환합니다.
CMDIFrameWndEx::GetThisClass 이 클래스 형식과 연결된 개체에 대한 포인터를 CRuntimeClass 가져오기 위해 프레임워크에서 호출됩니다.
CMDIFrameWndEx::GetToolbarButtonToolTipText 애플리케이션이 도구 모음 단추에 대한 도구 설명을 표시할 때 프레임워크에서 호출됩니다.
CMDIFrameWndEx::InsertPane 지정한 창을 도킹 관리자에 등록합니다.
CMDIFrameWndEx::IsFullScreen 프레임 창이 전체 화면 모드인지 여부를 확인합니다.
CMDIFrameWndEx::IsMDITabbedGroup MDI 탭 그룹 기능을 사용할 수 있는지 여부를 확인합니다.
CMDIFrameWndEx::IsMemberOfMDITabGroup 지정된 탭 창이 MDI 탭 그룹에 있는 창 목록에 있는지 여부를 확인합니다.
CMDIFrameWndEx::IsMenuBarAvailable 프레임 창에 메뉴 모음이 있는지 여부를 확인합니다.
CMDIFrameWndEx::IsPointNearDockSite 지정된 지점이 Dock 사이트 근처에 있는지 여부를 확인합니다.
CMDIFrameWndEx::IsPrintPreview 프레임 창이 인쇄 미리 보기 모드인지 여부를 확인합니다.
CMDIFrameWndEx::LoadFrame 리소스 정보에서 프레임 창을 만듭니다. ( CMDIFrameWnd::LoadFrame을 재정의합니다.)
CMDIFrameWndEx::LoadMDIState MDI 탭 그룹의 지정된 레이아웃과 이전에 연 문서 목록을 로드합니다.
CMDIFrameWndEx::MDITabMoveToNextGroup 현재 활성 탭 창에서 다음 또는 이전 탭 그룹으로 활성 탭을 이동합니다.
CMDIFrameWndEx::MDITabNewGroup 단일 창이 있는 새 탭 그룹을 만듭니다.
CMDIFrameWndEx::NegotiateBorderSpace OLE 현재 위치 활성화 중에 프레임 창의 테두리 공간을 협상합니다.
CMDIFrameWndEx::OnCloseDockingPane 사용자가 도킹 가능한 창에서 닫기 단추를 클릭할 때 프레임워크에서 호출됩니다.
CMDIFrameWndEx::OnCloseMiniFrame 사용자가 부동 미니 프레임 창에서 닫기 단추를 클릭할 때 프레임워크에서 호출됩니다.
CMDIFrameWndEx::OnClosePopupMenu 활성 팝업 메뉴가 메시지를 처리할 때 프레임워크에서 호출됩니다 WM_DESTROY .
CMDIFrameWndEx::OnCmdMsg 명령 메시지를 라우팅 및 디스패치하고 명령 사용자 인터페이스 개체를 업데이트하기 위해 프레임워크에서 호출됩니다.
CMDIFrameWndEx::OnDrawMenuImage 메뉴 항목과 연결된 이미지를 그릴 때 프레임워크에서 호출됩니다.
CMDIFrameWndEx::OnDrawMenuLogo 메시지를 처리할 때 프레임워크에서 CMFCPopupMenu호출됩니다 WM_PAINT .
CMDIFrameWndEx::OnEraseMDIClientBackground MDI 프레임 창에서 메시지를 처리할 때 프레임워크에서 호출됩니다 WM_ERASEBKGND .
CMDIFrameWndEx::OnMenuButtonToolHitTest 개체가 메시지를 처리할 때 프레임워크에서 CMFCToolBarButton호출됩니다 WM_NCHITTEST .
CMDIFrameWndEx::OnMoveMiniFrame 미니 프레임 창을 이동하기 위해 프레임워크에서 호출됩니다.
CMDIFrameWndEx::OnSetPreviewMode 애플리케이션의 기본 프레임 창 인쇄 미리 보기 모드를 설정합니다. ( CFrameWnd::OnSetPreviewMode을 재정의합니다.)
CMDIFrameWndEx::OnShowCustomizePane 빠른 사용자 지정 창이 활성화될 때 프레임워크에서 호출됩니다.
CMDIFrameWndEx::OnShowMDITabContextMenu 탭 중 하나에 상황에 맞는 메뉴를 표시해야 하는 경우 프레임워크에서 호출됩니다. (MDI 탭 그룹에만 유효합니다.)
CMDIFrameWndEx::OnShowPanes 틀을 표시하거나 숨기기 위해 프레임워크에서 호출됩니다.
CMDIFrameWndEx::OnShowPopupMenu 팝업 메뉴가 활성화될 때 프레임워크에서 호출됩니다.
CMDIFrameWndEx::OnSizeMDIClient 클라이언트 MDI 창의 크기가 변경되면 프레임워크에서 호출됩니다.
CMDIFrameWndEx::OnTearOffMenu 분리 막대가 있는 메뉴가 활성화될 때 프레임워크에서 호출됩니다.
CMDIFrameWndEx::OnUpdateFrameMenu 프레임 메뉴를 업데이트하기 위해 프레임워크에서 호출됩니다. ( CMDIFrameWnd::OnUpdateFrameMenu을 재정의합니다.)
CMDIFrameWndEx::PaneFromPoint 지정한 점을 포함하는 도킹 창을 반환합니다.
CMDIFrameWndEx::PreTranslateMessage 클래스 CWinApp 에서 Windows 함수로 디스패치되기 전에 창 메시지를 번역하는 데 TranslateMessage DispatchMessage 사용됩니다. ( CMDIFrameWnd::PreTranslateMessage을 재정의합니다.)
CMDIFrameWndEx::RecalcLayout 프레임 창의 레이아웃을 다시 계산하기 위해 프레임워크에서 호출됩니다. ( CFrameWnd::RecalcLayout을 재정의합니다.)
CMDIFrameWndEx::RemovePaneFromDockManager 창을 등록 취소하고 도킹 관리자에서 제거합니다.
CMDIFrameWndEx::SaveMDIState MDI 탭 그룹의 현재 레이아웃과 이전에 연 문서 목록을 저장합니다.
CMDIFrameWndEx::SetPrintPreviewFrame 인쇄 미리 보기 프레임 창을 설정합니다.
CMDIFrameWndEx::SetupToolbarMenu 더미 항목을 검색하고 지정된 사용자 정의 항목으로 대체하여 도구 모음 개체를 수정합니다.
CMDIFrameWndEx::ShowFullScreen 기본 프레임을 일반 모드에서 전체 화면 모드로 전환합니다.
CMDIFrameWndEx::ShowPane 지정된 창을 표시하거나 숨깁니다.
CMDIFrameWndEx::ShowWindowsDialog CMFCWindowsManagerDialog 상자를 만들어 엽니다.
CMDIFrameWndEx::TabbedDocumentToControlBar 지정한 탭 문서를 도킹 창으로 변환합니다.
CMDIFrameWndEx::UpdateCaption 프레임워크에서 창 프레임 캡션을 업데이트하기 위해 호출됩니다.
CMDIFrameWndEx::UpdateMDITabbedBarsIcons 각 MDI 탭 창에 대한 아이콘을 설정합니다.
CMDIFrameWndEx::WinHelp WinHelp 애플리케이션 또는 상황에 맞는 도움말을 시작하기 위해 프레임워크에서 호출됩니다. ( CWnd::WinHelp을 재정의합니다.)

데이터 멤버

속성 설명
CMDIFrameWndEx::m_bCanConvertControlBarToMDIChild 도킹 창을 MDI 자식 창으로 변환할 수 있는지 여부를 결정합니다.
CMDIFrameWndEx::m_bDisableSetRedraw MDI 자식 창에 대한 다시 그리기 최적화를 사용하거나 사용하지 않도록 설정합니다.

설명

MDI 애플리케이션에서 확장된 사용자 지정 기능을 활용하려면 대신 애플리케이션 CMDIFrameWndEx CMDIFrameWnd의 MDI 프레임 창 클래스를 파생합니다.

예시

다음 예제에서는 .에서 CMDIFrameWndEx클래스를 파생합니다. 이 코드 조각은 DrawClient 샘플: MFC 리본 기반 OLE 개체 그리기 애플리케이션에서 제공됩니다.

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

상속 계층 구조

CObject

CCmdTarget

CWnd

CFrameWnd

CMDIFrameWnd

CMDIFrameWndEx

요구 사항

머리글: afxMDIFrameWndEx.h

CMDIFrameWndEx::ActiveItemRecalcLayout

현재 항목의 레이아웃을 다시 계산합니다.

void ActiveItemRecalcLayout();

CMDIFrameWndEx::AddPane

도킹 관리자에 창을 등록합니다.

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

매개 변수

pControlBar
[in] 등록할 창에 대한 포인터입니다.

bTail
[in] 목록의 끝에 이 창을 추가할지 여부를 지정합니다.

반환 값

창이 성공적으로 등록된 경우 0이 아닌 값을 반환합니다. 창이 도킹 관리자에 이미 등록된 경우 0을 반환합니다.

설명

각 창은 도킹 레이아웃에 CDockingManager 참여하기 전에 클래스 에 등록해야 합니다. 이 메서드를 사용하여 특정 창을 도킹하려는 도킹 관리자에게 알립니다. 해당 창이 등록되면 도킹 관리자는 도킹 관리자가 유지 관리하는 창 목록에서 맞춤 설정 및 위치에 따라 정렬합니다.

CMDIFrameWndEx::AdjustClientArea

테두리를 허용하도록 클라이언트 영역을 줄입니다.

virtual void AdjustClientArea();

CMDIFrameWndEx::AdjustDockingLayout

도킹된 모든 창의 레이아웃을 다시 계산합니다.

virtual void AdjustDockingLayout(HDWP hdwp=NULL);

매개 변수

hdwp
[in] 다중 창 위치 구조를 식별합니다. 를 호출 BeginDeferWindowPos하여 이 값을 가져올 수 있습니다.

설명

이 멤버 함수를 호출하여 프레임 창에 도킹된 모든 창의 레이아웃을 다시 계산합니다.

CMDIFrameWndEx::AreMDITabs

MDI 탭 기능 또는 MDI 탭 그룹 기능을 사용할 수 있는지 여부를 확인합니다.

BOOL AreMDITabs(int* pnMDITabsType=NULL) const;

매개 변수

pnMDITabsType
[out] 사용하도록 설정된 기능을 나타내는 정수 변수에 대한 포인터입니다.

  • 0: 모든 기능을 사용할 수 없습니다.
  • 1: MDI 탭을 사용할 수 있습니다.
  • 2: MDI 탭 그룹을 사용할 수 있습니다.

반환 값

MDI 탭 또는 MDI 탭 그룹을 사용할 수 있는지 여부를 반환 TRUE 합니다.

위의 기능이 활성화되지 않은 경우 반환 FALSE 합니다.

설명

이 함수를 사용하여 프레임 창에 MDI 탭 또는 MDI 탭 그룹을 사용할 수 있는지 여부를 확인합니다. MDI 탭 기능을 사용하거나 사용하지 않도록 설정하는 데 사용합니다 CMDIFrameWndEx::EnableMDITabs .

MDI 탭 그룹 기능을 사용하거나 사용하지 않도록 설정하는 데 사용합니다 CMDIFrameWndEx::EnableMDITabbedGroups .

CMDIFrameWndEx::CanConvertControlBarToMDIChild

프레임 창이 도킹 창을 탭 문서로 변환할 수 있는지 여부를 결정하기 위해 프레임워크에서 호출됨

virtual BOOL CanConvertControlBarToMDIChild();

Return Value

TRUE 프레임 창이 도킹 창을 탭 문서로 변환할 수 있는지를 반환하고, 그렇지 않으면 반환됩니다FALSE.

설명

파생 클래스에서 이 메서드를 재정의하고 도킹 창을 탭 문서로 변환할 수 있도록 반환 TRUE 합니다. 또는 .로 설정할 CMDIFrameWndEx::m_bCanConvertControlBarToMDIChild TRUE수 있습니다.

CMDIFrameWndEx::ControlBarToTabbedDocument

지정한 도킹 창을 탭 문서로 변환합니다.

virtual CMDIChildWndEx* ControlBarToTabbedDocument(CDockablePane* pBar);

매개 변수

pBar
변환할 도킹 창에 대한 포인터입니다.

Return Value

도킹 창이 포함된 새 MDI 자식 창에 대한 포인터를 반환합니다.

설명

이 메서드는 도킹 창을 탭 문서로 변환합니다. 이 메서드를 호출할 때 프레임워크는 클래스 개체를 CMDIChildWndEx 만들고, 도킹 관리자에서 도킹 창을 제거하고, 도킹 창을 새 MDI 자식 창에 추가합니다. MDI 자식 창이 도킹 창의 크기를 조정하여 전체 클라이언트 영역을 덮습니다.

CMDIFrameWndEx::CreateDocumentWindow

자식 문서 창을 만듭니다.

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

매개 변수

lpcszDocName
[in] 문서 식별자를 포함하는 텍스트 문자열입니다. 일반적으로 문서 파일의 전체 경로입니다.

pObj
[in] 사용자 정의 개체에 대한 포인터입니다. 예를 들어 개발자는 문서를 설명하고 시작 시 문서를 초기화하는 방법을 알려주는 애플리케이션별 데이터 구조를 만들 수 있습니다.

반환 값

CMDIChildWndEx에 대한 포인터입니다.

설명

프레임워크는 이전에 레지스트리에 저장된 문서 목록을 로드할 때 이 메서드를 호출합니다.

레지스트리에서 로드할 때 문서를 만들려면 이 메서드를 재정의합니다.

예시

다음 예제에서는 VisualStudioDemo 샘플: MFC Visual Studio 애플리케이션에서 사용되는 방법을 CreateDocumentWindow 보여줍니다.

이 예제에서는 g_strStartViewName 디스크 파일에서 로드되지 않은 "가상 문서"(예: "시작 페이지")의 이름이 될 수 있습니다. 따라서 이 경우를 처리하기 위해 특별한 처리가 필요합니다.

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

CMDIFrameWndEx::CreateNewWindow

프레임워크에서 새 창을 만들기 위해 호출됩니다.

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

매개 변수

lpcszDocName
[in] 문서 이름입니다.

pObj
[in] 향후 사용을 위해 예약되어 있습니다.

반환 값

새 창에 대한 포인터입니다.

CMDIFrameWndEx::DockPane

지정된 창을 프레임 창에 도킹합니다.

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

매개 변수

pBar
[in] 도킹할 창에 대한 포인터입니다.

nDockBarID
[in] 도킹할 프레임 창의 측면을 지정합니다.

lpRect
[in] 사용되지 않습니다.

설명

이 메서드는 지정된 창을 호출할 때 CBasePane::EnableDocking CMDIFrameWndEx::EnableDocking 지정된 프레임 창의 측면 중 하나에 도킹합니다.

예시

다음 예제에서는 DockPane 메서드를 사용하는 방법을 보여 줍니다. 이 코드 조각은 VisualStudioDemo 샘플: MFC Visual Studio 애플리케이션에서 제공됩니다.

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

DockPane(&m_wndToolbarBuild);

CMDIFrameWndEx::DockPaneLeftOf

창을 다른 창의 왼쪽에 도킹합니다.

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

매개 변수

pBar
[in] 도킹 창에 대한 포인터입니다.

pLeftOf
[in] 도크 사이트 역할을 하는 창에 대한 포인터입니다.

반환 값

작업이 성공하면 반환 TRUE 합니다. 그렇지 않으면 FALSE를 반환합니다.

설명

미리 정의된 순서로 여러 창 개체를 도킹하려면 이 메서드를 호출합니다. 이 메서드는 지정한 창을 지정한 pBarpLeftOf의 왼쪽에 도킹합니다.

예시

다음 예제에서는 VisualStudioDemo 샘플: MFC Visual Studio 애플리케이션에서 메서드를 사용하는 방법을 DockPaneLeftOf 보여 있습니다.

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

CMDIFrameWndEx::EnableAutoHidePanes

기본 프레임 창의 지정된 측면에 도킹된 창에 자동 숨기기 모드를 사용하도록 설정합니다.

BOOL EnableAutoHidePanes(DWORD dwDockStyle);

매개 변수

dwDockStyle
[in] 사용할 주 프레임 창의 측면을 지정합니다. 다음 플래그 중 하나 이상을 사용합니다.

  • CBRS_ALIGN_LEFT
  • CBRS_ALIGN_RIGHT
  • CBRS_ALIGN_TOP
  • CBRS_ALIGN_BOTTOM

반환 값

이 함수를 호출하여 기본 프레임 창의 지정된 측면에 도킹된 창에 자동 숨기기 모드를 사용하도록 설정합니다.

예시

다음 예제에서는 VisualStudioDemo 샘플: MFC Visual Studio 애플리케이션에서 메서드를 사용하는 방법을 EnableAutoHidePanes 보여 있습니다.

EnableAutoHidePanes(CBRS_ALIGN_ANY);

설명

CMDIFrameWndEx::EnableDocking

MDI 프레임 창에 속하는 창의 도킹을 사용하도록 설정합니다.

BOOL EnableDocking(DWORD dwDockStyle);

매개 변수

dwDockStyle
[in] 적용할 도킹 스타일을 지정합니다.

반환 값

설명

개체에 속하는 창의 도킹을 사용하도록 설정하려면 이 함수를 CMDIFrameWndEx 호출합니다.

예시

다음 예제에서는 VisualStudioDemo 샘플: MFC Visual Studio 애플리케이션에서 메서드를 사용하는 방법을 EnableDocking 보여 있습니다.

EnableDocking(CBRS_ALIGN_ANY);

CMDIFrameWndEx::EnableFullScreenMainMenu

주 메뉴를 전체 화면 모드로 표시하거나 숨깁니다.

void EnableFullScreenMainMenu(BOOL bEnableMenu);

매개 변수

bEnableMenu
[in] TRUE 를 선택하여 주 메뉴를 전체 화면 모드로 표시하거나 FALSE 숨깁니다.

설명

CMDIFrameWndEx::EnableFullScreenMode

프레임 창에 전체 화면 모드를 사용하도록 설정합니다.

void EnableFullScreenMode(UINT uiFullScreenCmd);

매개 변수

uiFullScreenCmd
[in] 전체 화면 모드를 사용하거나 사용하지 않도록 설정하는 명령의 ID입니다.

설명

전체 화면 모드에서는 모든 도킹 컨트롤 바, 도구 모음 및 메뉴가 숨겨지고 활성 보기의 크기가 전체 화면을 차지하도록 조정됩니다. 전체 화면 모드를 사용하도록 설정하는 경우 이 모드를 사용하거나 사용하지 않도록 설정하는 명령의 ID를 지정해야 합니다. 주 프레임의 OnCreate 함수에서 호출 EnableFullScreenMode 할 수 있습니다. 프레임 창이 전체 화면 모드로 전환되는 경우 프레임워크는 지정된 명령 ID가 있는 하나의 단추가 있는 부동 도구 모음을 만듭니다. 화면에 주 메뉴를 유지하려면 다음을 호출합니다 CMDIFrameWndEx::EnableFullScreenMainMenu.

CMDIFrameWndEx::EnableLoadDockState

도킹 상태의 로드를 사용하거나 사용하지 않도록 설정합니다.

void EnableLoadDockState(BOOL bEnable = TRUE);

매개 변수

bEnable
[in] TRUE 도킹 상태의 로드를 사용하도록 설정하려면 도킹 상태 FALSE 의 로드를 사용하지 않도록 설정합니다.

설명

CMDIFrameWndEx::EnableMDITabbedGroups

프레임 창에 MDI 탭 그룹 기능을 사용하거나 사용하지 않도록 설정합니다.

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

매개 변수

bEnable
[in] MDI 탭 그룹 기능을 사용하는 경우 TRUEFALSEMDI 탭 그룹 기능을 사용할 수 없습니다.

params
[in] MDI 클라이언트 영역에서 만든 자식 창에 프레임워크가 적용되는 매개 변수를 지정합니다.

설명

이 메서드를 사용하여 MDI 탭 그룹 기능을 사용하거나 사용하지 않도록 설정합니다. 이 기능을 사용하면 MDI 애플리케이션에서 자식 창을 MDI 클라이언트 영역 내에서 세로 또는 가로로 정렬된 탭 창으로 표시할 수 있습니다. 탭 창의 그룹은 분할자로 구분됩니다. 사용자는 분할자를 사용하여 탭 그룹의 크기를 조정할 수 있습니다.

사용자는 다음을 수행할 수 있습니다.

  • 그룹 간에 개별 탭을 끕니다.
  • 개별 탭을 창 가장자리로 끌어 새 그룹을 만듭니다.
  • 바로 가기 메뉴를 사용하여 탭을 이동하거나 새 그룹을 만듭니다.
  • 애플리케이션은 탭 창의 현재 레이아웃과 현재 열려 있는 문서 목록을 저장할 수 있습니다.

로 설정된 상태에서 이 메서드 bEnable 를 호출하면 FALSEparams 무시됩니다.

MDI 탭 그룹을 이미 사용하도록 설정한 경우에도 이 메서드를 다시 호출하여 자식 창에 대한 설정을 수정할 수 있습니다. 설정된 메서드 bEnable 를 호출하고 TRUE 매개 변수로 지정된 개체의 CMDITabInfo 멤버를 params 수정합니다.

MDI 탭 그룹을 사용하는 방법에 대한 자세한 내용은 MDI 탭 그룹을 참조 하세요.

예시

다음 예제에서는 VisualStudioDemo 샘플: MFC Visual Studio 애플리케이션에서 사용되는 방법을 EnableMDITabbedGroups 보여줍니다.

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

MDI 프레임 창에 대한 MDI 탭 기능을 사용하거나 사용하지 않도록 설정합니다. 사용하도록 설정하면 프레임 창에 각 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);

매개 변수

bEnable
탭을 사용할지 여부를 지정합니다.

bIcons
탭에 아이콘을 표시할지 여부를 지정합니다.

tabLocation
탭 레이블의 위치를 지정합니다.

bTabCloseButton
탭 닫기 단추를 표시할지 여부를 지정합니다.

style
탭의 스타일을 지정합니다. 일반 탭 또는 STYLE_3D_ONENOTE Microsoft OneNote 탭에 사용합니다STYLE_3D_SCROLLED.

bTabCustomTooltips
사용자 지정 도구 설명을 사용할 수 있는지 여부를 지정합니다.

bActiveTabCloseButton
이 경우 TRUE탭 영역의 오른쪽 모서리 대신 활성 탭에 닫기 단추가 표시됩니다.

설명

MDI 프레임 창에 대한 MDI 탭 기능을 사용하거나 사용하지 않도록 설정하려면 이 메서드를 호출합니다. 사용하도록 설정하면 모든 자식 창이 탭으로 표시됩니다.

탭 레이블은 매개 변수 tabLocation의 설정에 따라 프레임의 위쪽 또는 아래쪽에 있을 수 있습니다. CMFCTabCtrl::LOCATION_BOTTOM (기본 설정) 또는 CMFCTabCtrl::LOCATION_TOP.

TRUEAFX_WM_ON_GET_TAB_TOOLTIP 경우 bTabCustomTooltips 메시지가 주 프레임 창으로 전송됩니다. 코드는 이 메시지를 처리하고 MDI 탭에 대한 사용자 지정 도구 설명을 프레임워크에 제공할 수 있습니다.

예시

다음 예제에서는 MDITabsDemo 샘플: MFC 탭 MDI 애플리케이션에서 사용되는 방법을 EnableMDITabs 보여 줍니다.

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

사용자가 현재 탭을 닫을 때 마지막 활성 탭을 열지 여부를 지정합니다.

void EnableMDITabsLastActiveActivation(BOOL bLastActiveTab=TRUE);

매개 변수

bLastActiveTab
[in] 이면 TRUE마지막 활성 탭의 활성화를 사용하도록 설정합니다. 이면 FALSE마지막 활성 탭의 활성화를 사용하지 않도록 설정합니다.

설명

활성 탭을 닫을 때 탭을 여는 방법에는 두 가지가 있습니다.

  • 다음 탭을 활성화합니다.
  • 이전에 활성 탭을 활성화합니다.

기본 구현은 첫 번째 방법을 사용합니다.

탭 활성화의 두 번째 방법을 사용하도록 설정하는 데 사용합니다 EnableMDITabsLastActiveActivation . Windows에서 MDI 자식 창을 여는 방식을 에뮬레이트합니다.

CMDIFrameWndEx::EnablePaneMenu

애플리케이션 창 목록을 표시하는 팝업 창 메뉴의 자동 생성 및 관리를 사용하거나 사용하지 않도록 설정합니다.

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

매개 변수

bEnable
[in] 창 메뉴의 자동 처리를 사용하도록 설정한 경우 TRUEFALSE자동 처리를 사용하지 않도록 설정합니다.

uiCustomizeCmd
[in] 사용자 지정 메뉴 항목의 명령 ID입니다. 이 메뉴 항목은 일반적으로 창 목록의 끝에 추가됩니다.

strCustomizeLabel
[in] 사용자 지정 메뉴 항목(지역화용)에 대해 표시할 텍스트입니다.

uiViewToolbarsMenuEntryID
[in] 창 메뉴를 여는 도구 모음 메뉴 항목의 ID를 지정합니다. 일반적으로 보기 메뉴의 도구 모음 하위 메뉴입니다.

bContextMenuShowsToolbarsOnly
[in] 이 경우 TRUE창 메뉴에 도구 모음 목록만 표시됩니다. 이 경우 FALSE메뉴에 도구 모음 및 도킹 막대 목록이 표시됩니다.

bViewMenuShowsToolbarsOnly
[in] 이 경우 TRUE창 메뉴에 도구 모음 목록만 표시됩니다. 이 경우 FALSE메뉴에 도구 모음 및 도킹 막대 목록이 표시됩니다.

설명

팝업 창 메뉴에는 애플리케이션의 창 목록이 표시되며 사용자가 개별 창을 표시하거나 숨길 수 있습니다.

예시

다음 예제에서는 VisualStudioDemo 샘플: MFC Visual Studio 애플리케이션에서 사용되는 방법을 EnablePaneMenu 보여줍니다.

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

CMDIFrameWndEx::EnableWindowsDialog

명령 ID가 대화 상자를 호출하는 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);

매개 변수

uiMenuId
[in] 메뉴의 리소스 ID를 지정합니다.

lpszMenuText
[in] 항목의 텍스트를 지정합니다.

bShowHelpButton
[in] 창 관리 대화 상자에 도움말 단추를 표시할지 여부를 지정합니다.

uiMenuTextResId
[in] 항목의 텍스트 문자열을 포함하는 문자열 리소스 식별자입니다.

설명

이 메서드를 사용하여 명령이 MDI 자식 창 관리 대화 상자( CMFCWindowsManagerDialog 클래스)를 호출하는 메뉴 항목을 삽입합니다. 새 항목이 지정한 메뉴에 삽입됩니다 uiMenuId. 메시지를 처리할 때 호출 EnableWindowsDialog 합니다 WM_CREATE .

예시

다음 예제에서는 VisualStudioDemo 샘플: MFC Visual Studio 애플리케이션에서 사용되는 방법을 EnableWindowsDialog 보여줍니다.

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

CMDIFrameWndEx::GetActivePopup

현재 표시된 팝업 메뉴에 대한 포인터를 반환합니다.

CMFCPopupMenu* GetActivePopup() const;

반환 값

활성 팝업 메뉴에 대한 포인터입니다. NULL 팝업 메뉴가 활성화되지 않은 경우

설명

이 함수를 사용하여 현재 표시되는 클래스 개체에 CMFCPopupMenu 대한 포인터를 가져옵니다.

CMDIFrameWndEx::GetDefaultResId

MDI 프레임 창의 공유 리소스 ID를 반환합니다.

UINT GetDefaultResId() const;

반환 값

리소스 ID 값입니다. 프레임 창에 메뉴 모음이 없으면 0입니다.

설명

이 메서드는 MDI 프레임 창이 로드될 때 지정한 리소스 ID를 CFrameWnd::LoadFrame반환합니다.

CMDIFrameWndEx::GetMDITabGroups

MDI 탭 창 목록을 반환합니다.

const CObList& GetMDITabGroups() const;

반환 값

탭 창 목록이 포함된 클래스 개체에 대한 참조 CObList 입니다. 목록을 저장하거나 수정하지 마세요.

설명

이 메서드를 사용하여 탭 창 목록에 액세스합니다. 개별 탭 창의 일부 매개 변수를 변경하거나 쿼리하려는 경우 유용할 수 있습니다.

CMDIFrameWndEx::GetMDITabs

밑줄이 그은 탭 창에 대한 참조를 반환합니다.

CMFCTabCtrl& GetMDITabs();

반환 값

밑줄이 그은 탭 창에 대한 참조입니다.

CMDIFrameWndEx::GetMDITabsContextMenuAllowedItems

MDI 탭 그룹 기능을 사용할 때 유효한 작업을 결정하는 플래그 조합을 반환합니다.

DWORD GetMDITabsContextMenuAllowedItems();

반환 값

다음 플래그의 비트 "or" (|) 조합입니다.

  • AFX_MDI_CREATE_VERT_GROUP - 세로 탭 그룹을 만들 수 있습니다.
  • AFX_MDI_CREATE_HORZ_GROUP - 가로 탭 그룹을 만들 수 있습니다.
  • AFX_MDI_CAN_MOVE_PREV - 탭을 이전 탭 그룹으로 이동할 수 있습니다.
  • AFX_MDI_CAN_MOVE_NEXT - 탭을 다음 탭 그룹으로 이동할 수 있습니다.

설명

MDI 탭 그룹 기능을 사용하는 경우 특정 창의 탭에서 허용되는 작업을 알고 있어야 합니다. 이 메서드는 탭 창의 현재 레이아웃을 분석하고 빌드에 사용할 수 있는 플래그의 조합(예: 바로 가기 메뉴)을 반환합니다.

모든 탭 창이 세로로 정렬되거나 탭 창이 하나만 있는 경우 새 세로 탭 그룹을 만들 수 있습니다.

탭 창이 모두 가로로 정렬되거나 탭 창이 하나만 있는 경우 새 가로 탭 그룹을 만들 수 있습니다.

탭 창에 탭이 두 개 이상 있는 경우에만 탭을 이전 그룹으로 이동할 수 있습니다.

탭 창에 탭이 두 개 이상 있는 경우에만 탭을 다음 그룹으로 이동할 수 있습니다.

CMDIFrameWndEx::GetMenuBar

프레임 창에 연결된 메뉴 모음 개체에 대한 포인터를 반환합니다.

const CMFCMenuBar* GetMenuBar() const;

반환 값

메뉴 모음 개체에 대한 포인터입니다.

CMDIFrameWndEx::GetPane

지정된 컨트롤 ID가 있는 창에 대한 포인터를 반환합니다.

CBasePane* GetPane(UINT nID);

매개 변수

nID
[in] 컨트롤 ID입니다.

반환 값

지정된 컨트롤 ID가 있는 창(있는 경우)에 대한 포인터입니다. 그렇지 않으면 NULL입니다.

CMDIFrameWndEx::GetRibbonBar

프레임의 리본 표시줄 컨트롤을 검색합니다.

CMFCRibbonBar* GetRibbonBar();

반환 값

프레임의 CMFCRibbonBar 클래스 에 대한 포인터입니다.

설명

CMDIFrameWndEx::GetTearOffBars

해제 메뉴 목록을 반환합니다.

const CObList& GetTearOffBars() const;

반환 값

분리 상태에 있는 파생 개체에 대한 포인터 CPane컬렉션을 포함하는 클래스 개체에 대한 참조 CObList 입니다.

설명

CMDIFrameWndEx 은 해제 메뉴 컬렉션을 유지 관리합니다. 이 목록에 대한 참조를 검색하려면 이 메서드를 사용합니다.

CMDIFrameWndEx::GetToolbarButtonToolTipText

애플리케이션이 도구 모음 단추에 대한 도구 설명을 표시할 때 프레임워크에서 호출됩니다.

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

매개 변수

pButton
[in] 도구 모음 단추에 대한 포인터입니다.

strTTText
[in] 단추에 대해 표시할 도구 설명 텍스트입니다.

반환 값

TRUE 도구 설명이 표시되었으면 입니다. 그렇지 않으면 FALSE입니다.

설명

CMDIFrameWndEx::InsertPane

지정한 창을 도킹 관리자에 등록합니다.

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

매개 변수

pControlBar
[in] 삽입할 창에 대한 포인터입니다.

pTarget
[in] 창을 삽입하기 전이나 뒤에 있는 창에 대한 포인터입니다.

bAfter
[in] 이면 TRUE뒤에 pControlBar 삽입됩니다 pTarget. 이면 FALSE앞에 pControlBar 삽입됩니다 pTarget.

반환 값

TRUE 도킹 관리자에 창이 이미 등록된 경우 메서드가 창을 FALSE 성공적으로 등록하면 입니다.

설명

이 메서드를 사용하여 도킹 관리자에게 지정 pControlBar한 창에 대해 알릴 수 있습니다. 도킹 관리자는 도킹 관리자의 내부 목록에서 창의 맞춤 및 위치에 따라 이 창을 정렬합니다.

CMDIFrameWndEx::IsFullScreen

프레임 창이 전체 화면 모드인지 여부를 확인합니다.

BOOL IsFullScreen() const;

반환 값

TRUE 프레임 창이 전체 화면 모드인 경우 그렇지 않으면 FALSE.

설명

메서드를 호출하여 전체 화면 모드를 CMDIFrameWndEx::EnableFullScreenMode 설정할 수 있습니다.

CMDIFrameWndEx::IsMDITabbedGroup

MDI 탭 그룹 기능을 사용할 수 있는지 여부를 지정합니다.

BOOL IsMDITabbedGroup() const;

반환 값

TRUE MDI 탭 그룹 기능을 사용하도록 설정하면 FALSE.

설명

일반 MDI 탭 또는 MDI 탭 그룹 기능을 사용할 수 있는지 여부를 확인하려면 다음을 사용합니다 CMDIFrameWndEx::AreMDITabs.

CMDIFrameWndEx::IsMemberOfMDITabGroup

지정된 탭 창이 MDI 탭 그룹에 있는 창 목록에 있는지 여부를 확인합니다.

BOOL IsMemberOfMDITabGroup(CWnd* pWnd);

매개 변수

pWnd
[in] 탭 창에 대한 포인터입니다.

반환 값

TRUE 지정한 탭 창이 MDI 탭 그룹을 형성하는 탭 창 목록에 있는 경우 그렇지 않으면 FALSE.

CMDIFrameWndEx::IsMenuBarAvailable

프레임 창에 메뉴 모음이 있는지 여부를 확인합니다.

BOOL IsMenuBarAvailable() const;

반환 값

TRUE 메뉴 모음 개체에 대한 포인터가 없 NULL으면 이고, 그렇지 않으면 FALSE.입니다.

CMDIFrameWndEx::IsPointNearDockSite

지정된 지점이 Dock 사이트 근처에 있는지 여부를 확인합니다.

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

매개 변수

point
[in] 화면 좌표의 지정된 지점입니다.

dwBarAlignment
[in] 점이 가까운 가장자리를 지정합니다. 가능한 값은 CBRS_ALIGN_LEFT, CBRS_ALIGN_RIGHTCBRS_ALIGN_TOPCBRS_ALIGN_BOTTOM

bOuterEdge
[in] TRUE 지점이 도크 사이트의 바깥 테두리 근처에 있으면 FALSE 그렇지 않으면.

반환 값

TRUE 지점이 도크 사이트 근처에 있으면 FALSE.

설명

지점은 도킹 관리자의 민감도 집합 내에 있을 때 도킹 사이트 근처에 있습니다. 기본 민감도는 15픽셀입니다.

CMDIFrameWndEx::IsPrintPreview

프레임 창이 인쇄 미리 보기 모드인지 여부를 확인합니다.

BOOL IsPrintPreview();

반환 값

TRUE프레임 창이 인쇄 미리 보기 모드인 경우 그렇지 않으면 . FALSE

설명

CMDIFrameWndEx::LoadFrame

리소스 정보에서 프레임 창을 만듭니다.

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

매개 변수

nIDResource
[in] 프레임 창과 연결된 공유 리소스의 ID입니다.

dwDefaultStyle
[in] 프레임 창의 스타일입니다.

pParentWnd
[in] 프레임의 부모에 대한 포인터입니다.

pContext
[in] 구조체에 대한 포인터입니다.CCreateContext 이 매개 변수는 NULL일 수 있습니다.

반환 값

TRUE 메서드가 성공하면 이고, 그렇지 않으면 FALSE.입니다.

CMDIFrameWndEx::LoadMDIState

MDI 탭 그룹의 지정된 레이아웃과 이전에 연 문서 목록을 로드합니다.

virtual BOOL LoadMDIState(LPCTSTR lpszProfileName);

매개 변수

lpszProfileName
[in] 프로필 이름을 지정합니다.

반환 값

TRUE 로드가 성공하면 이고, FALSE 로드에 실패했거나 로드할 데이터가 없으면 입니다.

설명

MDI 탭 및 그룹 및 열린 문서 목록을 로드하거나 저장하려면 다음을 수행합니다.

  • 주 프레임을 닫을 때 호출 CMDIFrameWndEx::SaveMDIState
  • 기본 프레임을 만들 때 호출 CMDIFrameWndEx::LoadMDIState 합니다. 이 호출에 권장되는 위치는 주 프레임이 처음으로 표시되기 전입니다. 레지스트리에 저장된 위치에 주 프레임을 표시하기 위해 LoadMDIState 호출 후 추가하기 전에 pMainFrame->LoadFrame (IDR_MAINFRAME);. 추가 CWinAppEx::EnableLoadWindowPlacement (FALSE); CWinAppEx::ReloadWindowPlacement (pMainFrame); 합니다.
  • 애플리케이션이 파일로 저장되지 않은 문서를 표시하는 경우 파생 클래스에서 CMDIChildWndEx재정 GetDocumentName 의합니다. 반환된 문자열은 레지스트리에 문서 식별자로 저장됩니다. 에서 가져온 CDocument::GetPathName값을 반환하는 기본 구현 CMDIChildWndEx::GetDocumentName 입니다.
  • 레지스트리에서 로드할 때 문서를 올바르게 만들도록 재정 CMDIFrameWndEx::CreateDocumentWindow 의합니다. 첫 번째 매개 변수는 반환된 문자열입니다 GetDocumentName .

예시

다음 예제에서는 VisualStudioDemo 샘플: MFC Visual Studio 애플리케이션에서 사용되는 방법을 LoadMDIState 보여줍니다.

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

현재 활성 탭 창에서 다음 또는 이전 탭 그룹으로 활성 탭을 이동합니다.

void MDITabMoveToNextGroup(BOOL bNext=TRUE);

매개 변수

bNext
[in] 이 경우 TRUE탭을 다음 탭 그룹으로 이동합니다. 이 경우 FALSE이전 탭 그룹으로 이동합니다.

CMDIFrameWndEx::MDITabNewGroup

단일 창이 있는 새 탭 그룹을 만듭니다.

void MDITabNewGroup(BOOL bVert=TRUE);

매개 변수

bVert
[in] 새 그룹 맞춤을 지정합니다. 이면 TRUE새 그룹이 세로로 정렬됩니다. 이면 FALSE새 그룹이 가로로 정렬됩니다.

설명

이 함수를 사용하여 새 탭 창(새 탭 그룹)을 만들고 첫 번째 탭을 추가합니다.

예시

다음 예제에서는 VisualStudioDemo 샘플: MFC Visual Studio 애플리케이션에서 사용되는 방법을 MDITabNewGroup 보여줍니다.

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

CMDIFrameWndEx::m_bCanConvertControlBarToMDIChild

도킹 창을 MDI 자식 창으로 변환할 수 있는지 여부를 지정합니다.

BOOL m_bCanConvertControlBarToMDIChild;

설명

도킹 컨트롤 막대를 MDI 자식 창으로 변환할 수 있는지 여부를 나타냅니다. 이 플래그인 TRUE경우 사용자가 Tabbed Document 명령을 선택하면 프레임워크에서 변환을 자동으로 처리합니다. 플래그가 보호되며 -derived 클래스의 생성자에서 설정 m_bCanConvertControlBarToMDIChild 하거나 재정의 CMDIFrameWndEx하여 CanConvertControlBarToMDIChild이 옵션을 명시적으로 사용하도록 설정해야 합니다.

기본값은 FALSE입니다.

예시

다음 예제에서는 VisualStudioDemo 샘플: MFC Visual Studio 애플리케이션에서 사용되는 방법을 m_bCanConvertControlBarToMDIChild 보여줍니다.

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

CMDIFrameWndEx::m_bDisableSetRedraw

MDI 자식 창에 대한 다시 그리기 최적화를 사용하거나 사용하지 않도록 설정합니다.

AFX_IMPORT_DATA static BOOL m_bDisableSetRedraw;

설명

기본값은 TRUE입니다.

MDI 자식의 다시 그리기를 최적화하려면 이 플래그 FALSE 를 설정합니다. 이 경우 프레임워크는 애플리케이션이 활성 탭을 변경할 때 기본 프레임을 호출 SetRedraw (FALSE) 합니다.

이 플래그는 원치 않는 효과(예: 표시되는 백그라운드 애플리케이션)를 일으킬 수 있습니다. 따라서 MDI 탭 활성화 중에 눈에 띄는 깜박임이 발생하는 경우에만 기본값을 변경하는 것이 좋습니다.

CMDIFrameWndEx::NegotiateBorderSpace

OLE 현재 위치 활성화 중에 프레임 창의 테두리 공간을 협상합니다.

virtual BOOL NegotiateBorderSpace(
    UINT nBorderCmd,
    LPRECT lpRectBorder);

매개 변수

nBorderCmd
[in] 열거 CFrameWnd::BorderCmd형의 다음 값 중 하나를 포함합니다.

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

lpRectBorder
[in, out] 테두리의 RECT 좌표를 지정하는 구조 체 또는 CRect 클래스 개체에 대한 포인터입니다.

반환 값

메서드가 성공한 경우 0이 아니며, 그렇지 않은 경우 0입니다.

설명

이 방법은 OLE 테두리 공간 협상의 구현입니다.

CMDIFrameWndEx::OnCloseDockingPane

사용자가 도킹 가능한 창에서 닫기 단추를 클릭할 때 프레임워크에서 호출됩니다.

virtual BOOL OnCloseDockingPane(CDockablePane* pWnd);

매개 변수

pWnd
[in] 닫혀 있는 창에 대한 포인터입니다.

반환 값

TRUE 도킹 창을 닫을 수 있으면 입니다. 그렇지 않으면 FALSE입니다.

설명

도킹 창 숨기기를 처리하도록 이 메서드를 재정의합니다. 도킹 창을 숨기지 않으려면 반환 FALSE 합니다.

기본 구현은 아무 작업도 수행 하지 하 고 반환 TRUE합니다.

CMDIFrameWndEx::OnCloseMiniFrame

사용자가 부동 미니 프레임 창에서 닫기 단추를 클릭할 때 프레임워크에서 호출됩니다.

virtual BOOL OnCloseMiniFrame(CPaneFrameWnd*);

매개 변수

pWnd
[in] 닫히고 있는 미니 프레임 창에 대한 포인터입니다.

반환 값

TRUE 부동 미니 프레임 창을 닫을 수 있으면 그렇지 않으면 FALSE입니다.

설명

이 메서드를 재정의하여 부동 미니 프레임 창 숨기기를 처리합니다. 부동 미니 프레임 창이 숨겨지는 것을 방지하려면 반환 FALSE 합니다.

기본 구현은 아무 작업도 수행 하지 하 고 반환 TRUE합니다.

CMDIFrameWndEx::OnClosePopupMenu

활성 팝업 메뉴가 메시지를 처리할 때 프레임워크에서 호출됩니다 WM_DESTROY .

virtual void OnClosePopupMenu(CMFCPopupMenu* pMenuPopup);

매개 변수

pMenuPopup
[in] 팝업 메뉴에 대한 포인터입니다.

설명

해당 개체가 메시지를 처리할 때 MDI 프레임 창에 속하는 클래스 개체의 CMFCPopupMenu 알림을 처리 WM_DESTROY 하려는 경우 이 메서드를 재정의합니다.

CMDIFrameWndEx::OnCmdMsg

명령 메시지를 라우팅 및 디스패치하고 명령 사용자 인터페이스 개체를 업데이트하기 위해 프레임워크에서 호출됩니다.

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

매개 변수

nID
[in] 명령 ID입니다.

nCode
[in] 명령 알림 코드를 식별합니다. 값에 대한 자세한 내용은 다음을 nCode참조하세요 CCmdTarget::OnCmdMsg.

pExtra
[in] 의 값 nCode에 따라 사용됩니다. pExtra에 대한 자세한 내용은 CCmdTarget::OnCmdMsg을 참조하세요.

pHandlerInfo
[in, out] 일반적으로 이 매개 변수는 .이어야 NULL합니다. 그렇지 않은 NULLOnCmdMsg 경우 명령을 디스패치하는 대신 구조체의 pHandlerInfo 멤버와 pmf 멤버를 채웁니다pTarget.

반환 값

메시지가 처리되는 경우 0이 아닌 경우 그렇지 않으면 0입니다.

CMDIFrameWndEx::OnDrawMenuImage

메뉴 항목과 연결된 이미지를 그릴 때 프레임워크에서 호출됩니다.

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

매개 변수

pDC
[in] 디바이스 컨텍스트에 대한 포인터입니다.

pMenuButton
[in] 메뉴 단추에 대한 포인터입니다.

rectImage
[in] 이미지의 경계 사각형입니다.

반환 값

TRUE 메서드가 이미지를 그립니다. 기본 구현은 FALSE를 반환합니다.

설명

파생 개체가 소유한 메뉴 모음에 속하는 메뉴 항목에 대한 이미지 렌더링을 사용자 지정하려는 경우 이 메서드를 재정의 CMDIFrameWndEx합니다. 기본 구현은 아무 작업도 수행하지 않습니다.

메시지를 처리할 때 프레임워크에서 CMFCPopupMenu호출됩니다 WM_PAINT .

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

설명

파생 개체가 소유한 메뉴 모음에 속하는 팝업 메뉴에 로고를 표시하도록 이 함수를 재정의 CMDIFrameWndEx합니다. 기본 구현은 아무 작업도 수행하지 않습니다.

CMDIFrameWndEx::OnEraseMDIClientBackground

MDI 프레임 창에서 메시지를 처리할 때 프레임워크에서 호출됩니다 WM_ERASEBKGND .

virtual BOOL OnEraseMDIClientBackground(CDC*);

반환 값

TRUE 애플리케이션이 메시지를 처리하고 배경을 지우면 입니다.

설명

-derived 클래스에서 메시지를 처리하려는 경우 이 멤버 함수를 재정의 WM_ERASEBKGND CMDIFrameWndEx합니다.

CMDIFrameWndEx::OnMenuButtonToolHitTest

개체가 메시지를 처리할 때 프레임워크에서 CMFCToolBarButton호출됩니다 WM_NCHITTEST .

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

매개 변수

pButton
[in] 도구 모음 단추입니다.

pTI
[out] 구조체에 대한 포인터입니다 TOOLINFO .

반환 값

TRUE 애플리케이션이 매개 변수를 채우면 입니다 pTI . 기본 구현은 FALSE를 반환합니다.

설명

도구 설명에 특정 메뉴 항목에 대한 정보를 제공하려는 경우 이 메서드를 재정의합니다. 기본 구현은 아무 작업도 수행하지 않습니다.

CMDIFrameWndEx::OnMoveMiniFrame

미니 프레임 창을 이동하기 위해 프레임워크에서 호출됩니다.

virtual BOOL OnMoveMiniFrame(CWnd* pFrame);

매개 변수

pFrame
[in] 미니 프레임 창에 대한 포인터입니다.

반환 값

TRUE 메서드가 성공하면 이고, 그렇지 않으면 FALSE.입니다.

CMDIFrameWndEx::OnSetPreviewMode

애플리케이션의 기본 프레임 창 인쇄 미리 보기 모드를 설정합니다.

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

매개 변수

bPreview
[in] 이면 TRUE인쇄 미리 보기 모드를 설정합니다. 이면 FALSE미리 보기 모드를 취소합니다.

pState
[in] 구조체에 대한 포인터입니다 CPrintPreviewState .

설명

이 메서드는 CFrameWnd::OnSetPreviewMode를 재정의합니다.

CMDIFrameWndEx::OnShowCustomizePane

빠른 사용자 지정 창이 활성화될 때 프레임워크에서 호출됩니다.

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

매개 변수

pMenuPane
[in] 빠른 사용자 지정 창에 대한 포인터입니다.

uiToolbarID
[in] 사용자 지정할 도구 모음의 컨트롤 ID입니다.

반환 값

이 메서드는 항상 TRUE을 반환합니다.

설명

빠른 사용자 지정 창은 사용자가 도구 모음에서 사용자 지정을 클릭할 때 열리는 메뉴입니다.

빠른 사용자 지정 창에서 변경하려면 파생 클래스에서 이 메서드를 재정의합니다.

CMDIFrameWndEx::OnShowMDITabContextMenu

바로 가기 메뉴가 탭 중 하나에 표시되기 전에 프레임워크에서 호출됩니다. MDI 탭 그룹에만 유효합니다.

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

매개 변수

point
[in] 화면 좌표에 있는 메뉴의 위치입니다.

dwAllowedItems
[in] 현재 탭에 허용되는 작업을 나타내는 플래그의 비트 "or" (|) 조합입니다.

  • AFX_MDI_CREATE_VERT_GROUP - 세로 탭 그룹을 만들 수 있습니다.
  • AFX_MDI_CREATE_HORZ_GROUP - 가로 탭 그룹을 만들 수 있습니다.
  • AFX_MDI_CAN_MOVE_PREV - 탭을 이전 탭 그룹으로 이동할 수 있습니다.
  • AFX_MDI_CAN_MOVE_NEXT - 탭을 다음 탭 그룹으로 이동할 수 있습니다.
  • AFX_MDI_CAN_BE_DOCKED - 탭 문서를 도킹된 상태로 전환합니다(탭 문서에만 해당).

bTabDrop
[in] TRUE 탭을 다른 탭 그룹으로 끌어서 메뉴를 표시합니다. FALSE 현재 활성 탭에 메뉴를 바로 가기 메뉴로 표시합니다.

반환 값

파생 클래스에서 이 메서드를 재정의 CMDIFrameWndEx합니다.

설명

처리 OnShowMDITabContextMenu하지 않으면 바로 가기 메뉴가 표시되지 않습니다. 이 함수는 MDI 탭 그룹 기능을 사용하도록 설정할 때 MFC 애플리케이션 마법사에 의해 생성됩니다.

예시

다음 예제에서는 VisualStudioDemo 샘플: MFC Visual Studio 애플리케이션에서 사용되는 방법을 OnShowMDITabContextMenu 보여줍니다.

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

틀을 표시하거나 숨기기 위해 프레임워크에서 호출됩니다.

virtual BOOL OnShowPanes(BOOL bShow);

매개 변수

bShow
[in] TRUE 창을 표시하려면 창을 FALSE 숨깁니다.

반환 값

TRUE 창이 지정된 상태에 이미 있는 경우 이 메서드 FALSE 를 호출한 결과로 창의 상태가 변경되면 bShow. 예를 들어 창이 숨겨지고 bShow 있는 FALSE경우 반환 값은 .입니다 FALSE.

설명

기본 구현은 최상위 프레임 창에서 도구 모음을 제거합니다.

TRUE 경우CDockingManager::m_bHideDockingBarsInContainerMode(기본값) 모든 도킹 창이 숨겨집니다.

CMDIFrameWndEx::OnShowPopupMenu

팝업 메뉴를 열 때 프레임워크에서 호출됩니다.

virtual BOOL OnShowPopupMenu(CMFCPopupMenu*);

반환 값

TRUE 팝업 메뉴를 표시하려면 입니다. 그렇지 않으면 FALSE입니다. 기본 구현은 TRUE를 반환합니다.

설명

팝업 메뉴 활성화 시 특수 처리를 구현하려는 경우 이 메서드를 재정의합니다. 예를 들어 일반 메뉴 항목을 색 메뉴 단추로 변경하려면 분리 막대를 설정하는 등의 작업을 수행할 수 있습니다.

기본 구현은 아무 작업도 수행하지 않습니다.

CMDIFrameWndEx::OnSizeMDIClient

클라이언트 MDI 창의 크기가 변경되면 프레임워크에서 호출됩니다.

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

매개 변수

rectOld
[in] MDI 클라이언트 창의 현재 크기입니다.

rectNew
[in] MDI 클라이언트 창의 새 크기입니다.

설명

CMDIFrameWndEx::OnTearOffMenu

분리 막대가 있는 메뉴가 활성화될 때 프레임워크에서 호출됩니다.

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

매개 변수

pMenuPopup
[in] 팝업 메뉴에 대한 포인터입니다.

pBar
[in] 분리 막대에 대한 포인터입니다.

반환 값

TRUE 절전 표시줄이 있는 팝업 메뉴를 활성화하려면 그렇지 않으면 FALSE. 기본값은 TRUE입니다.

설명

분리 막대에 대한 특수 설정을 구현하려는 경우 이 함수를 재정의합니다. 기본 구현은 아무 작업도 수행하지 않습니다.

CMDIFrameWndEx::OnUpdateFrameMenu

프레임 메뉴를 업데이트하기 위해 프레임워크에서 호출됩니다.

virtual void OnUpdateFrameMenu(HMENU hMenuAlt);

매개 변수

hMenuAlt
[in] 메뉴에 대한 핸들입니다.

CMDIFrameWndEx::PaneFromPoint

지정한 점을 포함하는 도킹 창을 반환합니다.

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

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

매개 변수

point
[in] 점(화면 좌표)입니다.

nSensitivity
[in] 선택한 각 창의 창 사각형이 이 값으로 모든 방향으로 확대됩니다.

bExactBar
[in] nSensitivity 이면 TRUE매개 변수가 무시됩니다.

pRTCBarType
[in] 이외 NULL인 경우 메서드는 지정된 형식의 창만 반복합니다.

dwAlignment
[out] 창이 있으면 이 매개 변수는 지정된 지점에 가장 가까운 창의 측면을 지정합니다.

반환 값

도킹 창에 대한 포인터이거나 NULL 컨트롤에 지정된 point점이 없는 경우.

설명

호출이 클래스CDockingManager 리디렉션됩니다. 자세한 내용은 CDockingManager::ControlBarFromPoint를 참조하세요.

CMDIFrameWndEx::RecalcLayout

프레임 창의 레이아웃을 다시 계산하기 위해 프레임워크에서 호출됩니다.

virtual void RecalcLayout(BOOL bNotify = TRUE);

매개 변수

bNotify
[in] 프레임 창의 현재 위치 항목이 레이아웃 변경 알림을 받는지 여부를 결정합니다. 이면 TRUE항목에 알림이 표시되고, 그렇지 않으면 FALSE.

설명

이 메서드는 CFrameWnd::RecalcLayout을 재정의합니다.

CMDIFrameWndEx::RemovePaneFromDockManager

창을 등록 취소하고 도킹 관리자에서 제거합니다.

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

매개 변수

pControlBar
[in] 제거할 창에 대한 포인터입니다.

bDestroy
[in] TRUE 제거된 창을 삭제합니다. FALSE 을 삭제하지 않습니다.

bAdjustLayout
[in] TRUE 도킹 레이아웃을 즉시 조정합니다. 이 경우 FALSE조정은 다른 이유로 다시 그리기 이벤트가 발생할 때만 발생합니다(사용자가 창 크기를 조정하고 주 프레임을 끄는 등).

bAutoHide
[in] TRUE 자동 숨기기 창 목록에서 창을 제거하려면 입니다. FALSE 일반 창 목록에서 창을 제거합니다.

pBarReplacement
[in] 제거된 창을 대체하는 창에 대한 포인터입니다.

설명

도킹 레이아웃에 참여하려면 각 창을 도킹 관리자에 등록해야 합니다. 창을 사용 CMDIFrameWndEx::AddPane 하거나 CMDIFrameWndEx::InsertPane 등록합니다.

창이 더 이상 프레임 창의 도킹 레이아웃에 속하지 않는 경우 이 메서드를 사용합니다.

CMDIFrameWndEx::SaveMDIState

MDI 탭 그룹의 현재 레이아웃과 이전에 연 문서 목록을 저장합니다.

virtual BOOL SaveMDIState(LPCTSTR lpszProfileName);

매개 변수

lpszProfileName
[in] 프로필 이름을 지정합니다.

반환 값

TRUE 저장에 성공하면 이고, FALSE 저장에 실패하면

설명

MDI 탭 및 그룹 및 열린 문서 목록을 로드하거나 저장하려면 다음을 수행합니다.

  • 주 프레임을 닫을 때 호출 SaveMDIState
  • 기본 프레임을 만들 때 호출 CMDIFrameWndEx::LoadMDIState 합니다. 이 호출에 권장되는 위치는 주 프레임이 처음으로 표시되기 전입니다.
  • 통화 CWinAppEx::EnableLoadWindowPlacement(FALSE);pMainFrame->LoadFrame (IDR_MAINFRAME);
  • 레지스트리에 저장된 위치에 주 프레임을 표시하려면 다음 LoadMDIState 을 호출 CWinAppEx::ReloadWindowPlacement(pMainFrame) 합니다.
  • 애플리케이션이 파일로 저장되지 않은 문서를 표시하는 경우 파생 클래스에서 CMDIChildWndEx재정 GetDocumentName 의합니다. 반환된 문자열은 레지스트리에 문서 식별자로 저장됩니다. 자세한 내용은 CMDIChildWndEx::GetDocumentName를 참조하세요.
  • 레지스트리에서 로드할 때 문서를 올바르게 만들도록 재정 CMDIFrameWndEx::CreateDocumentWindow 의합니다. 매개 CreateDocumentWindow 변수는 이전에 반환된 GetDocumentName 문자열입니다.

예시

다음 예제에서는 VisualStudioDemo 샘플: MFC Visual Studio 애플리케이션에서 사용되는 방법을 SaveMDIState 보여줍니다.

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

CMDIFrameWndEx::SetPrintPreviewFrame

인쇄 미리 보기 프레임 창을 설정합니다.

void SetPrintPreviewFrame(CFrameWnd* pWnd);

매개 변수

pWnd
[in] 인쇄 미리 보기 프레임 창에 대한 포인터입니다.

설명

CMDIFrameWndEx::SetupToolbarMenu

더미 항목을 사용자 정의 항목으로 바꿔 도구 모음 개체를 수정합니다.

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

매개 변수

menu
[in] 수정할 클래스 개체에 CMenu 대한 참조입니다.

uiViewUserToolbarCmdFirst
[in] 첫 번째 사용자 정의 명령을 지정합니다.

uiViewUserToolbarCmdLast
[in] 마지막 사용자 정의 명령을 지정합니다.

CMDIFrameWndEx::ShowFullScreen

기본 프레임을 일반 모드에서 전체 화면 모드로 전환합니다.

void ShowFullScreen();

설명

CMDIFrameWndEx::ShowPane

지정된 창을 표시하거나 숨깁니다.

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

매개 변수

pBar
[in] 표시하거나 숨길 창에 대한 포인터입니다.

bShow
[in] TRUE 창을 표시합니다. FALSE 창을 숨깁니다.

bDelay
[in] TRUE 도킹 레이아웃의 다시 계산을 지연합니다. FALSE 도킹 레이아웃을 즉시 다시 계산합니다.

bActivate
[in] TRUE 창을 활성으로 표시합니다. FALSE 창을 비활성으로 표시합니다.

설명

창을 표시하거나 숨기려면 이 메서드를 호출합니다. 도킹 창에는 사용하지 ShowWindow 마세요.

예시

다음 예제에서는 VisualStudioDemo 샘플: MFC Visual Studio 애플리케이션에서 사용되는 방법을 ShowPane 보여줍니다.

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 상자를 만들어 엽니다.

void ShowWindowsDialog();

예시

다음 예제에서는 VisualStudioDemo 샘플: MFC Visual Studio 애플리케이션에서 사용되는 방법을 ShowWindowsDialog 보여줍니다.

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

CMDIFrameWndEx::TabbedDocumentToControlBar

지정한 탭 문서를 도킹 창으로 변환합니다.

virtual BOOL TabbedDocumentToControlBar(CMDIChildWndEx* pMDIChildWnd);

매개 변수

pMDIChildWnd
도킹 창이 포함된 MDI 자식 창에 대한 포인터입니다.

반환 값

TRUE 메서드가 성공 FALSE 하면 실패합니다.

설명

이 메서드를 사용하여 탭된 문서를 도킹 창으로 변환합니다. 탭 문서는 .를 사용하여 CMDIFrameWndEx::ControlBarToTabbedDocument만들어야 합니다.

예시

다음 예제에서는 VisualStudioDemo 샘플: MFC Visual Studio 애플리케이션에서 사용되는 방법을 TabbedDocumentToControlBar 보여줍니다.

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

   TabbedDocumentToControlBar(pMDIChild);
}

CMDIFrameWndEx::UpdateCaption

프레임워크에서 창 프레임 캡션을 업데이트하기 위해 호출됩니다.

void UpdateCaption();

설명

CMDIFrameWndEx::UpdateMDITabbedBarsIcons

각 MDI 탭 창에 대한 아이콘을 설정합니다.

void UpdateMDITabbedBarsIcons();

CMDIFrameWndEx::WinHelp

WinHelp 애플리케이션 또는 상황에 맞는 도움말을 시작하기 위해 프레임워크에서 호출됩니다.

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

매개 변수

dwData
[in] 에 지정된 도움말 유형에 필요한 데이터를 지정 nCmd합니다.

nCmd
[in] 요청된 도움말의 유형을 지정합니다. 가능한 값 및 매개 변수에 미치는 영향에 대한 자세한 내용은 다음을 dwData 참조하세요 WinHelp.

설명

이 메서드는 CWnd::WinHelp를 재정의합니다.

참고 항목

계층 구조 차트
클래스
CMDIFrameWnd 클래스
CMDIChildWndEx 클래스