CMainFrameにCFrameWndをのせたときのCDocument – プログラミング – Home

通知
すべてクリア

CMainFrameにCFrameWndをのせたときのCDocument


Akira
 Akira
(@Akira)
ゲスト
結合: 23年前
投稿: 7
Topic starter  

CMainFrameのOnCreateClientで

pContext->m_pNewViewClass = RUNTIME_CLASS( CBaseFrame );
m_pPrevFrame = (CBaseFrame*)CreateView( pContext );
if( !m_pPrevFrame ) return FALSE;
return TRUE;

としてCFrameWndから派生したCBaseFrameを生成しています.
すると,後で CMainFrame内でGetActiveDocument を呼ぶと
NULLを返してきます.
GetActiveDocumentをデバッガで追いかけると,CViewのドキュメントが
NULLとなっていて,どうやらCViewにドキュメントが関連付けられていないよう
です.

どのようにしたら,CDocumentのポインタをちゃんと取得できるように
なるのでしょうか?
よろしくお願いします.


引用解決済
トピックタグ
ITO
 ITO
(@ITO)
ゲスト
結合: 22年前
投稿: 1235
 

> CFrameWndから派生したCBaseFrameを生成しています.
目的は何ですか。
CViewクラスや、CButton等のクラスではよく派生させて生成しますが、
CFrameWndはあまりやらないですが.........


返信引用
Akira
 Akira
(@Akira)
ゲスト
結合: 23年前
投稿: 7
Topic starter  

今,動的に画面分割を行うプログラムを書いていて,
CSplitterWndの各ペインにツールバーつきのウインドウを貼り付けています.
起動時にも分割方法を選べるようにしていて,1画面で起動するときに
CMainFrameにCFrameWndを貼り付けたいと考えています.


返信引用
ITO
 ITO
(@ITO)
ゲスト
結合: 22年前
投稿: 1235
 

MSDNライブラリーでサンプル「VIEWEX」をダウンロードしてみたらいいと思います。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました