■33414 / ) |
Re[3]: プレビューの仕様 |
□投稿者/ とっちゃん (375回)-(2009/02/27(Fri) 16:51:44)
|
■No33397 (おへそ七 さん) に返信 > CView::DoPrintPreview()の中に「CWnd* pMainWnd = GetParentFrame()」 > という記述がありましたので、ここを修正してみようと思い > DoPrintPreview()を派生させましたが、「protectedメンバにアクセス」 > のコンパイルエラー(CViewViewのメンバを参照している)が解消できず > 先へ進めない状況です。 > CPreviewView::m_pPreviewState のあたりですか? 自分のコード見たら、CPreviewViewも派生してましたw
ちと、チェックしてみましたけど、DoPrintPreview をオーバーライドせずに フレームウィンドウをトップにするのは無理みたいなので、いくつかのfriend定義もオーバーライドが必要です。
MFCの印刷回りは、あちこちで密約関係を結んでおり(C++的には、friend class CHoge となりますがw) うまいこと回避「できない」ように作られています。
そのため、カスタマイズする場合は、それぞれに派生クラスを用意して新たな密約関係を結びなおすという なんだか泥臭い手法を取らなければならない部分があります。
>>#どこかわからんならまずヘルプをくまなく探してくださいね。 > 互換性のところとかたどっていくといろいろ書いてますよ。 消えちゃったものとかもあるような気はしますが...
> VS2005のヘルプやネットを探しましたが、やりかたが下手なせいか > 解決につながる記事を見つけ出すことができませんでした。 > ネットを探すなら英語圏も行かないときついと思いますよ。 VS2002以降日本語のWin32Nativeなネタはほとんどないですから。
|
|