MFC 功能包 - 关闭后无法显示可停靠窗格

Posted

技术标签:

【中文标题】MFC 功能包 - 关闭后无法显示可停靠窗格【英文标题】:MFC feature pack - Couldn't show the dockable pane once closed 【发布时间】:2009-07-17 03:15:18 【问题描述】:

通过使用向导并选择 Office 2007 样式,您可以创建一个看起来像 IDE 的 UI - 左侧是可停靠的文件资源管理器窗格,右侧是可停靠的属性窗格。

但是,当您关闭这些可停靠窗格时,您将无法再次显示它们。即使你重新编译项目。

我搜索了一些论坛,看起来我不是唯一一个遇到这个问题的人。有没有办法再次显示这些窗格?

【问题讨论】:

【参考方案1】:

这些设置存储在注册表中。我创建了一个名为“office2007”的项目,在生成的向导文件 office2007.cpp 中有一行设置注册表中的设置路径: SetRegistryKey(_T("Local AppWizard-Generated Applications "));

office2007的设置存储在注册表中的路径是:HKEY_CURRENT_USER\Software\Local AppWizard-Generated Applications\office2007

如果您想获得窗格的初始状态,您应该删除注册表项:HKEY_CURRENT_USER\Software\Local AppWizard-Generated Applications\office2007\Workspace

【讨论】:

【参考方案2】:

如果不想每次都删除注册表设置,也可以加上这一行

m_bSaveState = FALSE;

到您的 CWinAppEx。每次程序打开时,它都会停止保存窗格的状态并重新初始化它们。

【讨论】:

以上是关于MFC 功能包 - 关闭后无法显示可停靠窗格的主要内容,如果未能解决你的问题,请参考以下文章

MFC DockablePane 不浮动或隐藏

使用 MFC Feature Pack 1 在 VS2008 中停靠选项卡式窗格位置

MFC 功能包 - 如何更新属性网格控件

在 CChildFrame 中创建的可停靠窗格在第二次应用时不可见。开始

将控制栏/窗格停靠到 CMDIFrameWndEx?

如何将停靠在选项卡中的 CDockablePane 带到前面