C++ 没有选项卡的MFC选项卡控件?

C++ 没有选项卡的MFC选项卡控件?,c++,mfc,tabs,controls,C++,Mfc,Tabs,Controls,我想做一个选项卡控件,但是顶部没有可见的选项卡 我更喜欢从页面左侧的列表或树中选择选项卡,类似这样的 选择左侧的列表/树项目将更改对话框右侧的所有内容 我知道我可以通过单独显示/隐藏RHS上的所有字段来实现这一点,具体取决于所选的视图,但这是无法管理的,因为至少有10种不同的设计。C++不允许我设计组,使它们一次可见/不可见。我更愿意将它们设计为完全独立的对话框资源,然后将它们引入,就像选项卡控件一样 我相信Windows窗体有一个ContentControl,它就像一个没有选项卡的选项卡控件

我想做一个选项卡控件,但是顶部没有可见的选项卡

我更喜欢从页面左侧的列表或树中选择选项卡,类似这样的

选择左侧的列表/树项目将更改对话框右侧的所有内容

我知道我可以通过单独显示/隐藏RHS上的所有字段来实现这一点,具体取决于所选的视图,但这是无法管理的,因为至少有10种不同的设计。C++不允许我设计组,使它们一次可见/不可见。我更愿意将它们设计为完全独立的对话框资源,然后将它们引入,就像选项卡控件一样

我相信Windows窗体有一个ContentControl,它就像一个没有选项卡的选项卡控件,听起来很完美,但MFC似乎没有


有什么方法可以很好地做到这一点吗?或者甚至可以使用第三方控件来处理它?

在MFC中,您可以通过为每个组创建一个无模式子对话框来完成此操作。对于每个对话框,关闭标题栏样式和边框样式,它将融入父窗口,而不是看起来像对话框。创建所有对话框,然后使用ShowWindow一次显示/隐藏一个对话框

次要细节:在父窗口上放置一个不可见控件(如组框)作为地标。创建每个对话框时,请使用MoveWindow在地标上定位并调整其大小


在父窗口中使用窗口样式WS_EX_CONTROLPARENT来帮助从父窗口到子窗口的选项卡键导航。

是,您可以使用对话框资源。将对话框样式设置为“子”,边框设置为“无”,标题栏设置为“假”。然后可以为每个对话框添加实现类/文件。然后,通过将包含窗口设置为对话框的父级(即SetParent),将对话框作为子组件在父级组件之间插入/删除