VS 2008 MFC Feature Pack で導入された CDockablePane 内に MFC CFormView を配置するにはどうすればよいですか?
5 に答える
cviewでこれを行うには、 BCGSoftサンプルを確認してください。クラス名は少し異なりますが、Microsoft に CDockablePane を提供したため、ほぼ同じものです。
これを行う機能パックのサンプルがあります。
ただし、私が行うことは次のとおりです。DockablePaneに配置したCDialogから派生したクラスを作成しました。次に、CFormViewから派生したクラスを作成し、そのインスタンスをドッキング可能なペインのメンバー変数にします。私が興味を持っているすべての関数(おそらくUpdateView()またはそれが呼び出されるものは何でも)、私はCDialogから派生したクラスに転送します。そうすれば、doc / view構造をアプリケーションに組み込むことの難しさを回避し、それでもメリットを得ることができます。
実はこれにはいくつかの方法があります。
独自の CFrameWnd クラスを派生させ、そのクラスのインスタンスを CDockable ペインに配置すると、その CFrameWnd 派生クラス内に必要な種類のフレームワークを配置できるようになりました。
秘訣は、作成を正しい順序で行っていることを確認することです。早期に呼び出そうとすると、内部ビューは作成されません。
おそらくこのタクシーが手がかりになるでしょう。
http://www.codeproject.com/KB/toolbars/sizecbar.aspx
CDockablePane を使用していませんが、その背後にある概念は同じです。CDockablePane と CFormView はページで説明されているようにまだ試していませんが、一見すると似ているように感じます。