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;
};
상속 계층 구조
요구 사항
머리글: 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
를 반환합니다.
설명
미리 정의된 순서로 여러 창 개체를 도킹하려면 이 메서드를 호출합니다. 이 메서드는 지정한 창을 지정한 pBar
창 pLeftOf
의 왼쪽에 도킹합니다.
예시
다음 예제에서는 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 탭 그룹 기능을 사용하는 경우 TRUE
FALSE
MDI 탭 그룹 기능을 사용할 수 없습니다.
params
[in] MDI 클라이언트 영역에서 만든 자식 창에 프레임워크가 적용되는 매개 변수를 지정합니다.
설명
이 메서드를 사용하여 MDI 탭 그룹 기능을 사용하거나 사용하지 않도록 설정합니다. 이 기능을 사용하면 MDI 애플리케이션에서 자식 창을 MDI 클라이언트 영역 내에서 세로 또는 가로로 정렬된 탭 창으로 표시할 수 있습니다. 탭 창의 그룹은 분할자로 구분됩니다. 사용자는 분할자를 사용하여 탭 그룹의 크기를 조정할 수 있습니다.
사용자는 다음을 수행할 수 있습니다.
- 그룹 간에 개별 탭을 끕니다.
- 개별 탭을 창 가장자리로 끌어 새 그룹을 만듭니다.
- 바로 가기 메뉴를 사용하여 탭을 이동하거나 새 그룹을 만듭니다.
- 애플리케이션은 탭 창의 현재 레이아웃과 현재 열려 있는 문서 목록을 저장할 수 있습니다.
로 설정된 상태에서 이 메서드 bEnable
를 호출하면 FALSE
params
무시됩니다.
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
.
이 TRUE
AFX_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] 창 메뉴의 자동 처리를 사용하도록 설정한 경우 TRUE
FALSE
자동 처리를 사용하지 않도록 설정합니다.
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 탭 그룹 기능을 사용하도록 설정하면
설명
일반 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_RIGHT
및 CBRS_ALIGN_TOP
CBRS_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
= 1borderRequest
= 2borderSet
= 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
합니다. 그렇지 않은 NULL
OnCmdMsg
경우 명령을 디스패치하는 대신 구조체의 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
합니다. 기본 구현은 아무 작업도 수행하지 않습니다.
CMDIFrameWndEx::OnDrawMenuLogo
메시지를 처리할 때 프레임워크에서 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
를 재정의합니다.