MFC CMDIFrameWndEx 类 公共方法:CMDIFrameWndEx::ShowFullScreen
CMDIFrameWndEx::ShowFullScreen 是 MFC(Microsoft Foundation Classes)的 CMDIFrameWndEx 类的一个公共方法,用于切换 MDI(Multiple Document Interface,多文档界面)框架窗口的全屏显示模式。这个方法通常用于实现在应用程序中切换到全屏显示或者从全屏显示返回正常模式的功能。全屏显示模式是指 MDI 框架窗口占据整个屏幕,隐藏任务栏和其他窗口装饰,提供更大的工作区。以下是一个简单的示例:void CYourMainFrame::OnToggleFullScreen(){ // 获取当前全屏状态 BOOL bFullScreen = GetFullScreen(); // 切换全屏状态 ShowFullScreen(!bFullScreen);}在上述示例中,OnToggleFullScreen 方法中调用了 ShowFullScreen 方法,通过传递参数 !bFullScreen 来切换全屏状态。GetFullScreen 方法用于获取当前的全屏状态。请注意,这只...
MFC CMDIFrameWndEx 类 公共方法:CMDIFrameWndEx::SaveMDIState
CMDIFrameWndEx::SaveMDIState 是 MFC(Microsoft Foundation Classes)的 CMDIFrameWndEx 类的一个公共方法,用于保存 MDI(Multiple Document Interface,多文档界面)的状态信息。这个方法通常用于保存 MDI 应用程序的当前状态,以便在下一次应用程序启动时还原先前的状态。这包括 MDI 子窗口的位置、大小、状态等信息。通常,这个方法会在应用程序退出时调用,将 MDI 框架窗口的状态信息保存到注册表或其他持久性存储中。以下是一个简单的示例:BOOL CYourApp::SaveState(LPCTSTR lpszSectionName, CFrameImpl* pFrameImpl){ // 在应用程序退出时调用 SaveMDIState 保存 MDI 状态 CMainFrame* pMainFrame = DYNAMIC_DOWNCAST(CMainFrame, pFrameImpl->m_pMainFrame); if (pMainFrame != NULL) ...
MFC CMDIFrameWndEx 类 公共方法:CMDIFrameWndEx::RecalcLayout
CMDIFrameWndEx::RecalcLayout 是 MFC(Microsoft Foundation Classes)的 CMDIFrameWndEx 类中的一个公共方法,用于重新计算和布局 MDI(Multiple Document Interface,多文档界面)框架窗口的各个部分。这个方法通常在 MDI 框架窗口的子窗口布局发生变化时被调用,例如当子窗口的大小发生改变、新的子窗口被创建或关闭等情况。通过调用 RecalcLayout,MDI 框架窗口会根据当前的布局和状态重新计算各个部分的大小和位置,以确保它们正确显示。以下是一个简单的示例:void CYourMainFrame::OnSize(UINT nType, int cx, int cy){ CMDIFrameWndEx::OnSize(nType, cx, cy); // 在主框架窗口大小改变时,重新计算布局 RecalcLayout();}在上述例子中,OnSize 方法捕获了主框架窗口的大小改变事件,并调用了 RecalcLayout 方法,以确保在窗口大小改变时重新计算布局。Reca...
MFC CMDIFrameWndEx 类 公共方法:CWinApp
CWinApp 不是 CMDIFrameWndEx 类的公共方法,而是 MFC(Microsoft Foundation Classes)中表示应用程序的类。在 MFC 应用程序中,通常会有一个类派生自 CWinApp,该类是应用程序的主类,负责初始化应用程序、处理消息循环、创建主框架窗口等。以下是一个简单的示例,演示如何派生自 CWinApp 类:class CYourApp : public CWinApp{public: CYourApp() {} // 初始化应用程序 virtual BOOL InitInstance() { // 创建主框架窗口 CYourMainFrame* pMainFrame = new CYourMainFrame; if (!pMainFrame->LoadFrame(IDR_MAINFRAME)) return FALSE; m_pMainWnd = pMainFrame; // 显示主框架窗口 pMainFra...
MFC CMDIFrameWndEx 类 公共方法:CMDIFrameWndEx::OnUpdateFrameMenu
CMDIFrameWndEx::OnUpdateFrameMenu 是 MFC(Microsoft Foundation Classes)的 CMDIFrameWndEx 类的一个公共方法,用于处理主框架窗口的菜单更新操作。这个方法通常在菜单需要更新的时候被调用,例如当应用程序切换到不同的文档视图或者在其他需要更新菜单的情况下。通过重写这个方法,你可以实现自定义的菜单更新逻辑。以下是一个简单的示例:void CYourMainFrame::OnUpdateFrameMenu(HMENU hMenuAlt){ // 在这里添加处理菜单更新的逻辑 // 可以根据当前文档视图状态更新菜单项 // ... // 调用基类实现,以确保处理默认的菜单更新操作 CMDIFrameWndEx::OnUpdateFrameMenu(hMenuAlt);}在这个方法中,hMenuAlt 参数表示备用的菜单句柄,你可以在这里添加自定义的菜单项或者根据应用程序的状态更新菜单项。然后,调用基类的实现以确保默认的操作也得以执行。请注意,这是基于我截至2022年1月的知识,如果你使用的...
MFC CMDIFrameWndEx 类 公共方法:CMDIFrameWndEx::OnSizeMDIClient
在MFC(Microsoft Foundation Classes)中,CMDIFrameWndEx 类的 OnSizeMDIClient 方法用于处理 MDI(Multiple Document Interface,多文档界面)客户区大小改变的操作。以下是一个简单的示例:void CYourMainFrame::OnSizeMDIClient(CSize sizeClient){ // 在这里添加处理 MDI 客户区大小改变的逻辑 // 可以根据 sizeClient 参数进行相应的操作 // ... // 调用基类实现,以确保处理默认的 MDI 客户区大小改变操作 CMDIFrameWndEx::OnSizeMDIClient(sizeClient);}在这个方法中,sizeClient 参数表示 MDI 客户区的新大小。你可以根据需要自定义处理逻辑,例如根据新的大小调整子窗口的布局,更新控件的位置等。然后,调用基类的实现以确保默认的操作也得以执行。请注意,这是基于我截至2022年1月的知识,如果你使用的是更新的 MFC 版本,建议查阅相应版本的文档或...
MFC CMDIFrameWndEx 类 公共方法:CMDIFrameWndEx::OnShowMDITabContextMenu
CMDIFrameWndEx::OnShowMDITabContextMenu 是 MFC(Microsoft Foundation Classes)的 CMDIFrameWndEx 类的一个公共方法,用于处理在 MDI(Multiple Document Interface,多文档界面)中显示 MDI 标签页(MDI Tab)上下文菜单的操作。MDI 标签页是在 MDI 应用程序中用于切换不同文档视图的标签。OnShowMDITabContextMenu 方法允许开发者自定义右键点击 MDI 标签页时显示的上下文菜单。以下是一个示例:void CYourMainFrame::OnShowMDITabContextMenu(CPoint point, DWORD dwAllowedItems, BOOL bDrop){ // 在这里添加自定义的 MDI 标签页上下文菜单逻辑 // 使用 dwAllowedItems 指定可用的菜单项 // ... // 调用基类实现,以确保处理默认的 MDI 标签页上下文菜单操作 CMDIFrameWndEx::OnSho...
MFC CMDIFrameWndEx 类 公共方法:CMDIFrameWndEx::OnSetPreviewMode
CMDIFrameWndEx::OnSetPreviewMode 是 MFC(Microsoft Foundation Classes)的 CMDIFrameWndEx 类的一个公共方法,用于处理设置预览模式(Preview Mode)的操作。在 MFC 中,预览模式是指应用程序的一种显示状态,通常在打印预览时使用。在预览模式下,应用程序会显示文档的内容以便用户在打印之前查看和调整。OnSetPreviewMode 方法允许开发者自定义在应用程序切换到或者离开预览模式时的行为。具体而言,当应用程序准备进入预览模式或者离开预览模式时,OnSetPreviewMode 方法会被调用。你可以重写这个方法以执行自定义的操作,例如隐藏或显示特定的控件、调整布局等。以下是一个示例:void CYourMainFrame::OnSetPreviewMode(BOOL bPreview, CPrintPreviewState* pState){ // 在这里添加自定义的预览模式切换逻辑 if (bPreview) { // 进入预览模式的处理 // 可以隐...
MFC CMDIFrameWndEx 类 公共方法:CMDIFrameWndEx::OnEraseMDIClientBackground
CMDIFrameWndEx::OnEraseMDIClientBackground 是 MFC 中 CMDIFrameWndEx 类的一个公共方法,用于处理 MDI(Multiple Document Interface,多文档界面)客户区的擦除背景操作。这个方法通常用于自定义客户区的擦除背景过程。在 MFC 应用程序中,CMDIFrameWndEx 是主框架窗口类,而 OnEraseMDIClientBackground 则是处理 MDI 客户区擦除背景的重要方法之一。具体来说,当 MDI 子窗口被创建、激活或者进行大小调整时,MDI 客户区的背景需要被擦除并重新绘制。OnEraseMDIClientBackground 方法允许你自定义这个擦除过程,以便在客户区绘制你自己的背景或效果。你可以重写这个方法来实现自定义的擦除操作,例如使用特定的背景色、图片,或者执行其他绘制操作。这有助于美化应用程序界面或者适应特定的设计需求。在实际使用中,你可以在你的 CMDIFrameWndEx 派生类中重写这个方法,并在其中添加自己的擦除背景的逻辑。例如:void CYourMainFrame:...
MFC CMDIFrameWndEx 类 公共方法:CMDIFrameWndEx::OnCmdMsg
在 MFC(Microsoft Foundation Classes)的 CMDIFrameWndEx 类中,OnCmdMsg 不是直接属于该类的公共方法。实际上,OnCmdMsg 是 CWnd 类中的一个虚拟函数,被用于处理 Windows 消息和命令消息。以下是 OnCmdMsg 的一般形式:virtual BOOL OnCmdMsg(UINT nID, int nCode, void* pExtra, AFX_CMDHANDLERINFO* pHandlerInfo);参数说明: nID:标识命令的 ID。 nCode:命令的代码,例如 CN_COMMAND 表示普通的命令消息,CN_UPDATE_COMMAND_UI 表示更新 UI 的命令消息。 pExtra:指向命令的额外信息的指针。 pHandlerInfo:命令处理程序的信息。CMDIFrameWndEx 作为 CWnd 的派生类,可以覆盖 OnCmdMsg 方法以处理特定的命令消息。这是一种常见的用法,特别是在 MDI(Multiple Document Interface)应用程序中,用于处理与文档视图相关的命令。以...
MFC CMDIFrameWndEx 类 公共方法:CMDIFrameWndEx::MDITabNewGroup
在 MFC(Microsoft Foundation Classes)的 CMDIFrameWndEx 类中,MDITabNewGroup 方法用于在 MDI(Multiple Document Interface)应用程序中创建一个新的 MDI 标签组(MDI tab group)。以下是该方法的一般形式:void CMDIFrameWndEx::MDITabNewGroup(BOOL bHorz = TRUE);参数说明: bHorz:一个布尔值,指定新创建的 MDI 标签组的方向。如果为 TRUE,则为水平方向;如果为 FALSE,则为垂直方向。方法说明:该方法用于在 MDI 应用程序中创建一个新的 MDI 标签组。MDI 标签组允许用户在主窗口中管理多个文档视图。通过指定 bHorz 参数,你可以选择新标签组的方向是水平还是垂直。以下是一个使用示例:// 创建主框架窗口CMDIFrameWndEx* pMainFrame = new CMDIFrameWndEx;if (!pMainFrame->LoadFrame(IDR_MAINFRAME)) { return ...
MFC CMDIFrameWndEx 类 公共方法:CMDIFrameWndEx::LoadMDIState
CMDIFrameWndEx 类确实包含 LoadMDIState 方法,用于加载 MDI(Multiple Document Interface)应用程序的状态信息。以下是该方法的一般形式:virtual BOOL LoadMDIState(LPCTSTR lpszProfileName, int nIndex = -1, int nCount = 1, BOOL bPrimaryOnly = TRUE);参数说明: lpszProfileName:用于标识存储 MDI 状态信息的配置文件中的部分名称。 nIndex:指定配置文件中的索引,用于加载多个 MDI 子窗口的状态信息。 nCount:要加载的 MDI 子窗口的数量。 bPrimaryOnly:如果为 TRUE,则仅加载主框架窗口的状态信息。返回值:返回一个布尔值,表示是否成功加载 MDI 状态信息。通常,你可以在应用程序的 InitInstance 函数中调用 LoadMDIState 方法来加载 MDI 窗口的状态信息。例如:BOOL CMyApp::InitInstance(){ // ... // 创建主...
MFC CMDIFrameWndEx 类 公共方法:CMDIFrameWndEx::LoadFrame
CMDIFrameWndEx 类中确实存在 LoadFrame 方法,该方法用于加载框架窗口的设置和资源。以下是该方法的一般形式:virtual BOOL LoadFrame( UINT nIDResource, DWORD dwDefaultStyle = WS_OVERLAPPEDWINDOW | FWS_ADDTOTITLE, CWnd* pParentWnd = NULL, CCreateContext* pContext = NULL);参数说明: nIDResource:资源 ID,用于标识框架窗口的菜单、工具栏等资源。 dwDefaultStyle:窗口的默认样式。 pParentWnd:父窗口指针,通常为 NULL。 pContext:创建上下文,包含有关窗口的创建信息。返回值:返回一个布尔值,表示是否成功加载框架窗口。通常,你可以在应用程序的 InitInstance 函数中调用 LoadFrame 方法来加载主框架窗口。例如:BOOL CMyApp::InitInstance(){ // ... // 创建主框架窗口 CMD...
MFC CMDIFrameWndEx 类 公共方法:CRuntimeClass
在 MFC 中,CRuntimeClass 是一个类对象的运行时信息类,用于描述类的信息。CRuntimeClass 类提供了一些方法,其中一个常用的方法是 CRuntimeClass::CreateObject,用于在运行时创建类的实例。请注意,CRuntimeClass 类并不直接属于 CMDIFrameWndEx 类,而是 MFC 中所有类的共同基类 CObject 中的一部分。下面是 CRuntimeClass 类的关键方法之一:CObject* CRuntimeClass::CreateObject() const;返回值:返回新创建的类实例的指针,其类型为 CObject*。你可以将其转换为相应的类类型,例如使用 dynamic_cast。使用 CRuntimeClass 的一个常见场景是在运行时创建类的对象。例如:CRuntimeClass* pRuntimeClass = RUNTIME_CLASS(CMyClass);CObject* pObject = pRuntimeClass->CreateObject();if (pObject != NULL) { ...
MFC CMDIFrameWndEx 类 公共方法:CMDIFrameWndEx::GetTearOffBars
CMDIFrameWndEx::GetTearOffBars 是 MFC(Microsoft Foundation Classes)中的一个公共方法,用于获取 TearOffBars。TearOffBars 是指可以从主窗口中拖出的工具栏,使其成为独立的浮动工具栏。这个方法的主要目的是返回 TearOffBars 的指针,以便在程序中进一步操作或查询这些浮动工具栏的信息。下面是该方法的简要说明:CObList* CMDIFrameWndEx::GetTearOffBars() const;返回值:返回一个指向 CObList 对象的指针,该对象包含 TearOffBars 的链表。注意事项: CObList 是 MFC 中的一个链表类,用于存储指向 CObject 派生类对象的指针。 通过这个方法,你可以获取 TearOffBars 的链表,并进一步对这些浮动工具栏进行操作。例如,你可以使用以下代码来获取 TearOffBars 的链表:CObList* pTearOffBarsList = GetTearOffBars();POSITION pos = pTearOffBarsLis...
MFC CMDIFrameWndEx 类 公共方法:CMDIFrameWndEx::GetRibbonBar
CMDIFrameWndEx::GetRibbonBar 是 MFC(Microsoft Foundation Classes)中 CMDIFrameWndEx 类的公共方法之一。这个方法用于获取与主框架窗口关联的 Ribbon 控件栏对象。以下是该方法的基本说明:CMFCRibbonBar* CMDIFrameWndEx::GetRibbonBar() const;这个方法返回一个指向 CMFCRibbonBar 对象的指针,该对象代表主框架窗口上的 Ribbon 控件栏。Ribbon 控件栏通常用于创建具有 Office 风格的用户界面。使用这个方法,您可以获取 Ribbon 控件栏对象,以便在程序中对其进行操作,例如添加元素、修改样式等。请注意,确保在使用该方法之前已经启用了 Ribbon 控件栏,并且该方法可能在没有启用 Ribbon 的情况下返回 NULL。如果您的应用程序没有使用 Ribbon,则此方法可能不适用。
MFC CMDIFrameWndEx 类 公共方法:CMDIFrameWndEx::GetPane
CMDIFrameWndEx::GetPane 是 MFC(Microsoft Foundation Classes)中 CMDIFrameWndEx 类的公共方法之一。这个方法用于获取主框架窗口中的指定面板(pane)。以下是该方法的基本说明:CBasePane* CMDIFrameWndEx::GetPane( const CBasePane* pBar, int nID, BOOL bSearchImmediateChildrenOnly = FALSE);参数解释: pBar:指定一个面板,从该面板开始查找。 nID:要查找的面板的标识符。 bSearchImmediateChildrenOnly:TRUE 表示仅在直接子面板中查找,FALSE 表示在所有子面板中递归查找。该方法返回指定标识符的面板。您可以使用这个方法在主框架窗口中获取特定标识符的面板对象,以便进行操作或查询面板的状态等。请注意,具体的使用可能会因 MFC 版本而异。
MFC CMDIFrameWndEx 类 公共方法:CMDIFrameWndEx::EnableMDITabs
CMDIFrameWndEx::EnableMDITabs 是 MFC(Microsoft Foundation Classes)中 CMDIFrameWndEx 类的公共方法之一。这个方法用于启用或禁用 MDI(Multiple Document Interface)窗口的选项卡式标签(Tabs)功能。以下是该方法的基本说明:BOOL CMDIFrameWndEx::EnableMDITabs( BOOL bEnable = TRUE, BOOL bIcons = TRUE, UINT uiTabID = -1, LPCTSTR lpszTabLabel = NULL, DWORD dwStyle = CMF_TABS_CMN_SINGLEGROUP | CMF_TABS_AUTODRAW | CMF_TABS_CLOSEBUTTON);参数解释: bEnable:TRUE 启用选项卡,FALSE 禁用。 bIcons:TRUE 启用选项卡上的图标,FALSE 禁用。 uiTabID:指定选项卡的 ID。 lpszTabLabel:选项卡的标签文字。 dwStyl...
MFC CMDIFrameWndEx 类 公共方法:CMDIFrameWndEx::EnableMDITabbedGroups
CMDIFrameWndEx::EnableMDITabbedGroups 是 MFC(Microsoft Foundation Classes)中 CMDIFrameWndEx 类的公共方法之一。这个方法用于启用 MDI(Multiple Document Interface)窗口的选项卡式分组(Tabbed Groups)功能。以下是该方法的基本说明:BOOL CMDIFrameWndEx::EnableMDITabbedGroups( BOOL bEnable = TRUE, const CString& strTabbedGroupName = _T("TabbedGroup"));参数解释: bEnable:TRUE 启用选项卡式分组,FALSE 禁用。 strTabbedGroupName:用于标识 MDI 选项卡组的名称。启用选项卡式分组后,MDI 应用程序的子窗口将以选项卡的形式显示在主框架窗口中,而不是传统的窗口排列方式。可以通过选项卡组的名称来区分不同的选项卡组。这个方法通常用于提供更现代和用户友好的界面,允许用户轻松地切换和管理...
MFC CMDIFrameWndEx 类 公共方法:CMDIFrameWndEx::EnableDocking
CMDIFrameWndEx::EnableDocking 是 MFC(Microsoft Foundation Classes)中 CMDIFrameWndEx 类的公共方法之一。该方法用于启用主框架窗口的停靠功能,允许用户通过拖放操作将面板(panes)停靠在主框架窗口的各个区域。以下是该方法的基本说明:void CMDIFrameWndEx::EnableDocking( DWORD dwDockStyle);参数解释: dwDockStyle:指定哪些停靠区域应该处于活动状态的标志。可以使用以下常量值的组合: - CBRS_ALIGN_TOP:顶部停靠区域 - CBRS_ALIGN_BOTTOM:底部停靠区域 - CBRS_ALIGN_LEFT:左侧停靠区域 - CBRS_ALIGN_RIGHT:右侧停靠区域 - CBRS_ALIGN_ANY:任意停靠区域通过调用 EnableDocking 方法并传递适当的标志,可以启用主框架窗口的停靠功能。然后,您可以在需要的时候使用其他相关方法,如 DockControlBar 等,将具体的面板停靠在相应的区域。请注意,具体...