Share via


CWnd::OnPaint

フレームワークは、Windows またはアプリケーションがアプリケーションのウィンドウの一部を再描画する要求を行うと、このメンバー関数を呼び出します。

afx_msg void OnPaint( );

解説

WM_PAINT のメッセージが UpdateWindow または RedrawWindow のメンバー関数が呼び出されると送信されます。

ウィンドウは RDW_INTERNALPAINT のフラグの設定による RedrawWindow のメンバー関数を呼び出した結果として内部描画メッセージが表示されることがあります。この場合、ウィンドウが更新領域がない場合があります。アプリケーションは、ウィンドウが更新領域があるかどうかを確認するに GetUpdateRect のメンバー関数を呼び出す必要があります。GetUpdateRect が 0 を返す場合、アプリケーションは関数 BeginPaintEndPaint のメンバーを呼び出す必要があります。

これは WM_PAINT のメッセージが RDW_INTERNALPAINT のフラグの設定による RedrawWindow のメンバー関数に無効な領域と呼び出しの両方で発生する可能性があるため WM_PAINT の各メッセージの内部のデータ構造を確認することによって、必要な内部に再描画または更新を確認するアプリケーションの役割です。

WM_PAINT の内部メッセージは一度だけ Windows に送られます。WM_PAINT の内部メッセージが UpdateWindow のメンバー関数により、ウィンドウに送信された後、WM_PAINT のメッセージが送信されず、またはウィンドウを無効にするか、または RedrawWindow のメンバー関数が RDW_INTERNALPAINT のフラグの設定に再度呼び出されるまで表示されます。

ドキュメント/ビュー アプリケーションでのイメージの表示の詳細については、CView::OnDrawを参照してください。

WM_Paintの使用方法の詳細については、Windows SDKの次のトピックを参照:

必要条件

ヘッダー: afxwin.h

参照

関連項目

CWnd クラス

階層図

CWnd::BeginPaint

CWnd::EndPaint

CWnd::RedrawWindow

CPaintDC クラス

CView::OnDraw