gpt4 book ai didi

visual-studio-2008 - 如何更改 CDockablePane 标题

转载 作者:行者123 更新时间:2023-12-03 06:58:11 24 4
gpt4 key购买 nike

如何强制刷新 MFC 功能包中 CDockablePane 的标题?我正在使用选项卡式 Visual Studio 样式示例,并且我想更改选项卡的标题。

这些似乎被缓存在某个地方,因为当我更改默认值时,它使用应用程序在之前运行时使用的内容。我在注册表中找不到与此相关的任何内容。

我正在修改字符串表 IDS_FILE_VIEW 和 IDS_CLASS_VIEW 以设置新的标题。我已进入 CDockablePane::CreateEx 方法,并且 lpszCaption 参数确实包含新标题,但旧标题仍在使用。

在隐藏并再次显示 Pane 之前,新的标题似乎不会加载。这应该是一个提示,但我无法弄清楚。

为什么它不直接使用我传递给 CreateEx 的标题???

最佳答案

简而言之,这是 MFC 功能包中的一个错误——实际上是 BCG 软件库中的错误。错误在于您无法动态更改这些标题。他们的答案是“你为什么要这样做?”

可停靠 Pane 中选项卡式 Pane 的标题存储在注册表中。如果注册表中已存在字幕,则不会使用创建时使用的字幕。

因此,第一次运行应用程序时,它将使用字符串表中的标题。之后,它使用注册表中的标题。

使用应用程序向导创建的设置,注册表设置位于:

HKEY_CURRENT_USER\Software\Local AppWizard-Generated Applications\MyApp\Workspace\DockingManager-128\DockingPaneAndPaneDividers

存储在该键中的值基本上是一个二进制文件,在启动时由对接管理器序列化到 Pane 中。内容未记录,但您可以在 afxdockablepane.cpp 中查看代码的作用。

我希望这对遇到此问题的其他人有所帮助。

关于visual-studio-2008 - 如何更改 CDockablePane 标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2312841/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com