单个文档 Windows 应用程序中的多个“窗格”视图
Posted
技术标签:
【中文标题】单个文档 Windows 应用程序中的多个“窗格”视图【英文标题】:Multiple "panes" view in single document Windows application 【发布时间】:2016-09-14 07:05:17 【问题描述】:我正在尝试为游戏场景编写一个编辑器。到目前为止,我可以在一个窗口中展示结果。但是,我希望有几个“窗格”,例如用于材料属性或资源预览。
Blender 布局就是一个很好的例子:
我知道 MFC 和 WinAPI,我宁愿使用 Qt,因为它不是免费的。
【问题讨论】:
那些侧边栏窗口可以是 CControlbar 窗口、CPane 窗口……而 MFC 可以做到这一点。有什么问题? 我认为问题是,我不想使用Dialog窗口。我正在使用 Document-View 单文档方法。所以你在说什么,那些东西是控制?喜欢按钮?然后你把它们添加到我的主视图中?我宁愿认为我需要单独的窗口(从 CWnd 派生)并以某种方式拆分视图.... 继续创建多个窗口。 不,一旦您创建了一个 SDI 应用程序,这些侧边栏窗口可能是 CPaneWnd,它可能具有您想要的行为(停靠、拖放、隐藏、自动隐藏等),并且您可以在其中放置任何控件在他们。创建 SDI 应用程序时,只需在第 6 步中选中“高级框架窗格”即可。 注意,您可以添加任意数量的 CPaneWnd,尽管向导允许您添加任何类型的窗格窗口。如何 ?创建所需窗格后,在项目创建后手动添加(编写代码)。 【参考方案1】:我是在商业应用程序上做的,效果很好:
-
创建单一文档应用程序
阅读
CDockablePane
,然后查看 MFC 功能包示例。
最终实现 CDockablePanes 及其内容
通过将它们停靠到您自己的CFrameWndEx
-派生类来按照您想要的方式排列它们。
【讨论】:
以上是关于单个文档 Windows 应用程序中的多个“窗格”视图的主要内容,如果未能解决你的问题,请参考以下文章