次の方法で共有


LPPAGEPAINTHOOK コールバック関数 (commdlg.h)

[ ページ設定] ダイアログ ボックスでサンプル ページの描画をカスタマイズできるメッセージを受信します。 PagePaintHook フック プロシージャは、PageSetupDlg 関数で使用されるアプリケーション定義またはライブラリ定義のコールバック関数です。

LPPAGEPAINTHOOK 型は、このコールバック関数へのポインターを定義します。 PagePaintHook は、アプリケーション定義またはライブラリ定義関数名のプレースホルダーです。

構文

LPPAGEPAINTHOOK Lppagepainthook;

UINT_PTR Lppagepainthook(
  HWND unnamedParam1,
  UINT unnamedParam2,
  WPARAM unnamedParam3,
  LPARAM unnamedParam4
)
{...}

パラメーター

unnamedParam1

[ ページ設定] ダイアログ ボックスへのハンドル。

unnamedParam2

受信するメッセージの識別子。

unnamedParam3

メッセージについての追加情報。 正確な意味は、 名前のないParam2 パラメーターの値によって異なります。

unnamedParam4

メッセージについての追加情報。 正確な意味は、 名前のないParam2 パラメーターの値によって異なります。

戻り値

フック プロシージャが描画シーケンスの最初の 3 つのメッセージ (WM_PSD_PAGESETUPDLGWM_PSD_FULLPAGERECT、またはWM_PSD_MINMARGINRECT) に対して TRUE を返す場合、ダイアログ ボックスはそれ以上メッセージを送信せず、次にシステムがサンプル ページを再描画する必要があるまでサンプル ページに描画しません。 フック プロシージャが 3 つのメッセージすべてに 対して FALSE を 返す場合、ダイアログ ボックスは図面シーケンスの残りのメッセージを送信します。

フック プロシージャが描画シーケンス内の残りのメッセージに対して TRUE を 返す場合、ダイアログ ボックスはサンプル ページの対応する部分を描画しません。 フック プロシージャがこれらのメッセージに対して FALSE を 返す場合、ダイアログ ボックスはサンプル ページのその部分を描画します。

注釈

[ ページ設定] ダイアログ ボックスには、ユーザーの選択が印刷された出力の外観にどのように影響するかを示すサンプル ページの画像が含まれています。 画像は、選択した用紙または封筒の種類を表す四角形で構成され、現在の余白を表す点線の四角形と、印刷されたページでのテキストの外観を示す部分的な (ギリシャ語のテキスト) 文字で構成されます。 PageSetupDlg 関数を使用して [ページ設定] ダイアログ ボックスを作成する場合は、PagePaintHook フック プロシージャを指定して、サンプル ページの外観をカスタマイズできます。

フック プロシージャを有効にするには、作成関数に渡した PAGESETUPDLG 構造体を使用します。 lpfnPagePaintHook メンバーでフック プロシージャへのポインターを指定し、Flags メンバーにPSD_ENABLEPAGEPAINTHOOK フラグを指定します。

ダイアログ ボックスがサンプル ページの内容を描画しようとするたびに、フック プロシージャは次のメッセージを一覧表示された順序で受け取ります。

メッセージ 意味
WM_PSD_PAGESETUPDLG このダイアログ ボックスでは、サンプル ページが描画されます。 フック プロシージャでは、このメッセージを使用して、サンプル ページの内容を描画する準備を行うことができます。
WM_PSD_FULLPAGERECT このダイアログ ボックスでは、サンプル ページが描画されます。 このメッセージは、サンプル ページの外接する四角形を指定します。
WM_PSD_MINMARGINRECT このダイアログ ボックスでは、サンプル ページが描画されます。 このメッセージは、余白の四角形を指定します。
WM_PSD_MARGINRECT ダイアログ ボックスは、余白の四角形を描画します。
WM_PSD_GREEKTEXTRECT ダイアログ ボックスは、余白の四角形内にギリシャ語のテキストを描画します。
WM_PSD_ENVSTAMPRECT このダイアログ ボックスは、封筒のサンプル ページの封筒スタンプの四角形に描画されようとしています。 このメッセージは封筒に対してのみ送信されます。
WM_PSD_YAFULLPAGERECT このダイアログ ボックスでは、封筒のサンプル ページの戻り値のアドレス部分が描画されます。 このメッセージは、封筒やその他の用紙サイズに対して送信されます。

要件

要件
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー commdlg.h (Windows.h を含む)

こちらもご覧ください

共通ダイアログ ボックス ライブラリ

概念

PAGESETUPDLG

PageSetupDlg

参照