(MFC を使用して) CWnd で wm_print メッセージを処理する方法はありますか? このメッセージを傍受し、子コントロールの印刷を防止しようとしています。ON_WM_PRINT() をメッセージ マップに追加すると、コンパイル エラーがスローされます。
質問する
861 次
1 に答える
4
MFC は、最も一般的なメッセージの ON_WM_XXXX() マクロのみを定義しますが、他のケースを処理できるようにする一般的な ON_MESSAGE() マクロもあります。追加
ON_MESSAGE(WM_PRINT, OnPrint)
メッセージマップに追加し、メンバー関数を宣言して実装します
afx_msg LRESULT OnPrint(WPARAM, LPARAM);
デバイス コンテキストは WPARAM で渡されるため、実装には次のようなものが必要です。
LRESULT MyWindowClass::OnPrint(WPARAM wp, LPARAM)
{
CDC* dc = CDC::FromHandle((HDC)wp);
// Do custom logic here ...
// Only call Default() if you want the default processing for this message too ...
return Default();
}
于 2012-08-17T07:27:31.197 に答える