// 这段 MFC 示例源代码演示如何使用 MFC Microsoft Office Fluent 用户界面 // (“Fluent UI”)。该示例仅供参考, // 用以补充《Microsoft 基础类参考》和 // MFC C++ 库软件随附的相关电子文档。 // 复制、使用或分发 Fluent UI 的许可条款是单独提供的。 // 若要了解有关 Fluent UI 许可计划的详细信息,请访问 // https://go.microsoft.com/fwlink/?LinkId=238214. // // 版权所有(C) Microsoft Corporation // 保留所有权利。 // MainFrm.h: CMainFrame 类的接口 // #pragma once #include "FileView.h" #include "ClassView.h" #include "OutputWnd.h" #include "PropertiesWnd.h" #include "CalendarBar.h" #include "Resource.h" class COutlookBar : public CMFCOutlookBar { virtual BOOL AllowShowOnPaneMenu() const { return TRUE; } virtual void GetPaneName(CString& strName) const { BOOL bNameValid = strName.LoadString(IDS_OUTLOOKBAR); ASSERT(bNameValid); if (!bNameValid) strName.Empty(); } }; class CMainFrame : public CFrameWndEx { protected: // 仅从序列化创建 CMainFrame() noexcept; DECLARE_DYNCREATE(CMainFrame) // 特性 public: // 操作 public: // 重写 public: virtual BOOL PreCreateWindow(CREATESTRUCT& cs); // 实现 public: virtual ~CMainFrame(); #ifdef _DEBUG virtual void AssertValid() const; virtual void Dump(CDumpContext& dc) const; #endif protected: // 控件条嵌入成员 CMFCRibbonBar m_wndRibbonBar; CMFCRibbonApplicationButton m_MainButton; CMFCToolBarImages m_PanelImages; CMFCRibbonStatusBar m_wndStatusBar; CFileView m_wndFileView; CClassView m_wndClassView; COutputWnd m_wndOutput; CPropertiesWnd m_wndProperties; COutlookBar m_wndNavigationBar; CMFCShellTreeCtrl m_wndTree; CCalendarBar m_wndCalendar; #if __CAPTIONBAR__ CMFCCaptionBar m_wndCaptionBar; #endif // 生成的消息映射函数 protected: afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct); afx_msg void OnApplicationLook(UINT id); afx_msg void OnUpdateApplicationLook(CCmdUI* pCmdUI); afx_msg void OnViewFileView(); afx_msg void OnUpdateViewFileView(CCmdUI* pCmdUI); afx_msg void OnViewClassView(); afx_msg void OnUpdateViewClassView(CCmdUI* pCmdUI); afx_msg void OnViewOutputWindow(); afx_msg void OnUpdateViewOutputWindow(CCmdUI* pCmdUI); afx_msg void OnViewPropertiesWindow(); afx_msg void OnUpdateViewPropertiesWindow(CCmdUI* pCmdUI); afx_msg void OnClassViewCaptionBar(); afx_msg void OnUpdateClassViewCaptionBar(CCmdUI* pCmdUI); afx_msg void OnOptions(); afx_msg void OnFilePrint(); afx_msg void OnFilePrintPreview(); afx_msg void OnUpdateFilePrintPreview(CCmdUI* pCmdUI); afx_msg void OnSettingChange(UINT uFlags, LPCTSTR lpszSection); DECLARE_MESSAGE_MAP() BOOL CreateDockingWindows(); void SetDockingWindowIcons(BOOL bHiColorIcons); #if __OUTLOOKBAR__ BOOL CreateOutlookBar(CMFCOutlookBar& bar, UINT uiID, CMFCShellTreeCtrl& tree, CCalendarBar& calendar, int nInitialWidth); #endif #if __CAPTIONBAR__ BOOL CreateCaptionBar(); #endif int FindFocusedOutlookWnd(CMFCOutlookBarTabCtrl** ppOutlookWnd); CMFCOutlookBarTabCtrl* FindOutlookParent(CWnd* pWnd); CMFCOutlookBarTabCtrl* m_pCurrOutlookWnd; CMFCOutlookBarPane* m_pCurrOutlookPage; public: afx_msg void OnGetMinMaxInfo(MINMAXINFO* lpMMI); afx_msg void OnViewFileBar(); afx_msg void OnUpdateViewFileBar(CCmdUI *pCmdUI); afx_msg void OnViewPropertyBar(); afx_msg void OnUpdateViewPropertyBar(CCmdUI *pCmdUI); afx_msg void OnViewOutputBar(); afx_msg void OnUpdateViewOutputBar(CCmdUI *pCmdUI); };