5

如何将 MFC CFormView 放置在 VS 2008 MFC 功能包中引入的 CDockablePane 中?

4

5 回答 5

1

检查BCGSoft示例以使用 cview 执行此操作。类名略有不同,但它们或多或少是相同的东西,因为它们向 Microsoft 提供了 CDockablePane。

于 2008-11-28T00:14:37.977 回答
1

我在 MFC Feature Pack 示例中找不到此类示例。

所有包含 CFormView 的项目是:

TasksPane TabControl TabbedView StatusBarDemo SetPaneSize MenuSubSet

但是在任何项目中,CFormView 都没有嵌入到 CDockablePane 中。

于 2010-03-25T23:32:16.920 回答
0

这辆出租车可能是个线索。

http://www.codeproject.com/KB/toolbars/sizecbar.aspx

虽然它没有使用 CDockablePane,但其背后的概念是相同的。我还没有尝试过页面中解释的 CDockablePane 和 CFormView 工作,但看了一眼,我觉得事情很相似。

于 2010-03-30T21:18:11.027 回答
0

有一个功能包示例可以执行此操作。

但是,我所做的如下:我创建了一个 CDialog 派生类,并将其放入 DockablePane 中。然后我创建了一个 CFormView 派生类,并将该类的一个实例作为可停靠窗格的成员变量。我感兴趣的每个函数(很可能是 UpdateView() 或任何它的名称),我都会转发到 CDialog 派生类。这样我就可以避开将文档/视图结构硬塞到我的应用程序中的困难,并且仍然可以获得好处。

于 2008-12-19T15:26:33.930 回答
0

实际上有几种方法可以做到这一点。

如果您派生自己的 CFameWnd 类,然后将该类的实例放在 CDockable 窗格中,您现在可以将所需的任何类型的框架放入该 CFrameWnd 派生类中。

诀窍是确保您以正确的顺序进行创建。如果您尝试尽早调用它,那么您的内部视图将永远不会被创建。

于 2009-03-16T19:54:08.890 回答