如何让你的MDI MFC应用程序在TaskBar中显示一个实例?

问题描述 投票:3回答:1

我有一个MDI应用程序,当我单击新文档时,它会打开一个单独的选项卡。这将在Windows中的任务栏中创建另一个图标实例。有什么办法可以改变这种行为,这样任务栏只显示一个图标实例吗?

我知道一种方法是使用SDI并使用选项卡来查看我的视图,但我希望将其保留为MDI。这甚至是可能的吗?

我试图模仿这个名为'Dameware NT Utilities'的特殊应用程序的视图:http://www.dameware.com/v3-dameware/media/DameWare/DW%20NTU/Carousel/DRS-Primary-medium.png?width=490&height=276&ext=.png

visual-c++ mfc mdi
1个回答
4
投票

经过一天的挖掘后,我找到了解决方案。天哪,最终弄明白这件事感觉很好。无论如何这里是解决方案。

我只需要覆盖子框架的CanShowOnTaskBarTabs()方法以返回FALSE。这是类方法:

首先,在childframe.h文件中,将以下代码放在类声明中

public:
     virtual BOOL CanShowOnTaskBarTabs();

然后在childframe.cpp文件中,将以下代码放在最底层:

BOOL CChildFrame::CanShowOnTaskBarTabs()
{
    return FALSE;
}

以下是有关该主题的更多信息:http://msdn.microsoft.com/en-us/library/ee256255(v=vs.100).aspx

© www.soinside.com 2019 - 2024. All rights reserved.