次の方法で共有


CPrintInfo 構造体

印刷ジョブまたは印刷プレビュー ジョブに関する情報を格納します。

構文

struct CPrintInfo

メンバー

パブリック メソッド

名前 説明
CPrintInfo::GetFromPage 印刷する最初のページの番号を返します。
CPrintInfo::GetMaxPage 文書の最後のページの番号を返します。
CPrintInfo::GetMinPage 文書の最初のページの番号を返します。
CPrintInfo::GetOffsetPage 結合された DocObject 印刷ジョブで印刷される DocObject 項目の最初のページの前にあるページの数を返します。
CPrintInfo::GetToPage 印刷される最後のページの番号を返します。
CPrintInfo::SetMaxPage 文書の最後のページの番号を設定します。
CPrintInfo::SetMinPage 文書の最初のページの番号を設定します。

パブリック データ メンバー

名前 説明
CPrintInfo::m_bContinuePrinting フレームワークが印刷ループを続行する必要があるかどうかを示すフラグが含まれています。
CPrintInfo::m_bDirect 文書を直接印刷するかどうかを示すフラグが含まれています ([印刷] ダイアログ ボックスを表示しません)。
CPrintInfo::m_bDocObject 印刷するドキュメントが DocObject かどうかを示すフラグを含みます。
CPrintInfo::m_bPreview ドキュメントをプレビューするかどうかを示すフラグが含まれます。
CPrintInfo::m_dwFlags DocObject 印刷操作を指定します。
CPrintInfo::m_lpUserData ユーザーが作成した構造体へのポインターを格納します。
CPrintInfo::m_nCurPage 現在印刷されているページの番号を識別します。
CPrintInfo::m_nJobNumber オペレーティング システムによって現在の印刷ジョブに割り当てられているジョブ番号を指定します。
CPrintInfo::m_nNumPreviewPages プレビュー ウィンドウに表示されるページの数を識別します。1 または 2 のいずれか。
CPrintInfo::m_nOffsetPage 結合された DocObject 印刷ジョブ内の特定の DocObject の最初のページのオフセットを指定します。
CPrintInfo::m_pPD [印刷] ダイアログ ボックスに使用する CPrintDialog オブジェクトへのポインターを格納します。
CPrintInfo::m_rectDraw 現在使用可能なページ領域を定義する四角形を指定します。
CPrintInfo::m_strPageDesc ページ番号表示用の書式指定文字列を含みます。

解説

CPrintInfo は構造体であり、基底クラスを持っていません。

フレームワークは、Print または Print Preview コマンドが選択されるたびに CPrintInfo のオブジェクトを作成し、コマンドの完了時にそれを破棄します。

CPrintInfo には、印刷するページの範囲や、現在印刷されているページなどの印刷ジョブの現在の状態など、印刷ジョブ全体に関する情報が含まれています。 一部の情報は、関連付けられた CPrintDialog オブジェクトに格納されます。このオブジェクトには、[印刷] ダイアログ ボックスにユーザーが入力した値が含まれます。

CPrintInfo オブジェクトは、印刷プロセス中にフレームワークとビュー クラスの間で渡され、2 つの間で情報を交換するために使用されます。 たとえば、フレームワークは、CPrintInfom_nCurPage メンバーに値を割り当てることで、印刷するドキュメントのページをビュー クラスに通知します。ビュー クラスは値を取得し、指定されたページの実際の印刷を実行します。

もう 1 つの例は、文書の長さが印刷されるまで認識されない場合です。 この状況では、ビュー クラスは、ページが印刷されるたびにドキュメントの末尾をテストします。 終了に達すると、ビュー クラスはCPrintInfom_bContinuePrinting メンバーを FALSE に設定します。これにより、印刷ループを停止するようにフレームワークに通知されます。

CPrintInfo は、"See Also" の下にリストされている CView のメンバー関数によって使用されます。Microsoft Foundation クラス ライブラリによって提供される印刷アーキテクチャの詳細については、「 Frame Windows および Document/View Architecture 」および「 Printing および Printing: Multipage Documents」を参照してください。

継承階層

CPrintInfo

要件

Header: afxext.h

CPrintInfo::GetFromPage

この関数を呼び出して、印刷する最初のページの番号を取得します。

UINT GetFromPage() const;

戻り値

印刷する最初のページの番号。

解説

これは、[印刷] ダイアログ ボックスでユーザーが指定した値であり、m_pPD メンバーによって参照されるCPrintDialog オブジェクトに格納されます。 ユーザーが値を指定していない場合、既定値はドキュメントの最初のページです。

CPrintInfo::GetMaxPage

この関数を呼び出して、ドキュメントの最後のページの番号を取得します。

UINT GetMaxPage() const;

戻り値

ドキュメントの最後のページの番号。

解説

この値は、m_pPD メンバーによって参照されるCPrintDialog オブジェクトに格納されます。

CPrintInfo::GetMinPage

この関数を呼び出して、ドキュメントの最初のページの番号を取得します。

UINT GetMinPage() const;

戻り値

ドキュメントの最初のページの番号。

解説

この値は、m_pPD メンバーによって参照されるCPrintDialog オブジェクトに格納されます。

CPrintInfo::GetOffsetPage

この関数を呼び出して、DocObject クライアントから複数の DocObject 項目を印刷するときにオフセットを取得します。

UINT GetOffsetPage() const;

戻り値

結合された DocObject 印刷ジョブで印刷される DocObject 項目の最初のページの前にあるページ数。

解説

この値は、 m_nOffsetPage メンバーによって参照されます。 ドキュメントの最初のページには、他のアクティブなドキュメントと共に DocObject として印刷されるときに、 m_nOffsetPage 値 + 1 の番号が付けられます。 m_nOffsetPage メンバーは、m_bDocObject値が TRUE の場合にのみ有効です。

CPrintInfo::GetToPage

この関数を呼び出して、印刷する最後のページの番号を取得します。

UINT GetToPage() const;

戻り値

印刷する最後のページの番号。

解説

これは、[印刷] ダイアログ ボックスでユーザーが指定した値であり、m_pPD メンバーによって参照されるCPrintDialog オブジェクトに格納されます。 ユーザーが値を指定していない場合、既定値はドキュメントの最後のページです。

CPrintInfo::m_bContinuePrinting

フレームワークが印刷ループを続行する必要があるかどうかを示すフラグが含まれています。

解説

印刷時の改ページ位置の変更を行う場合は、文書の末尾に達すると、 CView::OnPrepareDC のオーバーライドでこのメンバーを FALSE に設定できます。 SetMaxPage メンバー関数を使用して印刷ジョブの先頭でドキュメントの長さを指定した場合は、この変数を変更する必要はありません。 m_bContinuePrinting メンバーは、BOOL 型のパブリック変数です。

CPrintInfo::m_bDirect

直接印刷のために [印刷] ダイアログ ボックスがバイパスされる場合、フレームワークはこのメンバーを TRUE に設定します。それ以外の場合は FALSE。

解説

通常、シェルから印刷するとき、またはコマンド ID ID_FILE_PRINT_DIRECTを使用して印刷が完了すると、印刷ダイアログはバイパスされます。

通常、このメンバーは変更しませんが、変更する場合は、CView::OnPreparePrinting のオーバーライドで CView::D oPreparePrinting を呼び出す前に変更してください。

CPrintInfo::m_bDocObject

印刷するドキュメントが DocObject かどうかを示すフラグを含みます。

解説

このフラグが TRUE でない限り、データ メンバーの m_dwFlagsm_nOffsetPage は無効です。

CPrintInfo::m_bPreview

ドキュメントをプレビューするかどうかを示すフラグが含まれます。

解説

これは、ユーザーが実行したコマンドに応じてフレームワークによって設定されます。 印刷プレビュー ジョブの [印刷] ダイアログ ボックスは表示されません。 m_bPreview メンバーは、BOOL 型のパブリック変数です。

CPrintInfo::m_dwFlags

DocObject 印刷操作を指定するフラグの組み合わせを含みます。

解説

データ メンバー m_bDocObject が TRUE の場合にのみ有効です。

フラグには、次の値のうち 1 つ以上を指定できます。

  • PRINTFLAG_MAYBOTHERUSER

  • PRINTFLAG_PROMPTUSER

  • PRINTFLAG_USERMAYCHANGEPRINTER

  • PRINTFLAG_RECOMPOSETODEVICE

  • PRINTFLAG_DONTACTUALLYPRINT

  • PRINTFLAG_FORCEPROPERTIES

  • PRINTFLAG_PRINTTOFILE

CPrintInfo::m_lpUserData

ユーザーが作成した構造体へのポインターを格納します。

解説

これを使用して、ビュー クラスに保存しない印刷固有のデータを格納できます。 m_lpUserData メンバーは、LPVOID 型のパブリック変数です。

CPrintInfo::m_nCurPage

現在のページの番号を格納します。

解説

フレームワークは、ドキュメントのページごとに CView::OnPrepareDCCView::OnPrint を 1 回呼び出し、毎回このメンバーに異なる値を指定します。その値の範囲は、 GetFromPage によって返される値から、 GetToPageによって返される値までです。 CView::OnPrepareDCCView::OnPrintのオーバーライドでこのメンバーを使用して、ドキュメントの指定したページを印刷します。

プレビュー モードが最初に呼び出されると、フレームワークはこのメンバーの値を読み取り、最初にプレビューするドキュメントのページを決定します。 CView::OnPreparePrintingのオーバーライドでこのメンバーの値を設定すると、プレビュー モードに入ったときにドキュメント内のユーザーの現在位置を維持できます。 m_nCurPage メンバーは、UINT 型のパブリック変数です。

CPrintInfo::m_nJobNumber

現在の印刷ジョブに対してオペレーティング システムによって割り当てられたジョブ番号を示します。

解説

この値は、ジョブがまだ印刷されていない場合 (つまり、 CPrintInfo オブジェクトが新しく作成され、印刷に使用されていない場合)、またはジョブの開始でエラーが発生した場合にSP_ERROR可能性があります。

CPrintInfo::m_nNumPreviewPages

プレビュー モードで表示されるページの数を格納します。1 または 2 を指定できます。

解説

m_nNumPreviewPages メンバーは、UINT 型のパブリック変数です。

CPrintInfo::m_nOffsetPage

結合された DocObject 印刷ジョブの特定の DocObject の最初のページの前にあるページ数を格納します。

CPrintInfo::m_pPD

印刷ジョブの [印刷] ダイアログ ボックスを表示するために使用する CPrintDialog オブジェクトへのポインターを格納します。

解説

m_pPD メンバーは、CPrintDialogへのポインターとして宣言されたパブリック変数です。

CPrintInfo::m_rectDraw

ページの使用可能な描画領域を論理座標で指定します。

解説

これは、 CView::OnPrintのオーバーライドで参照できます。 このメンバーを使用すると、ヘッダーやフッターなどを印刷した後も使用可能な領域を追跡できます。 m_rectDraw メンバーは、CRect型のパブリック変数です。

CPrintInfo::m_strPageDesc

印刷プレビュー中にページ番号を表示するために使用される書式指定文字列を含みます。この文字列は、2 つの部分文字列で構成されます。1 つは単一ページ表示用、もう 1 つはダブルページ表示用で、それぞれ '\n' 文字で終わる。

解説

フレームワークでは、既定値として "Page %u\nPages %u-%u\n" が使用されます。 ページ番号に別の書式を設定する場合は、 CView::OnPreparePrintingのオーバーライドで書式指定文字列を指定します。 m_strPageDesc メンバーは、CString型のパブリック変数です。

CPrintInfo::SetMaxPage

この関数を呼び出して、ドキュメントの最後のページの番号を指定します。

void SetMaxPage(UINT nMaxPage);

パラメーター

nMaxPage
ドキュメントの最後のページの番号。

解説

この値は、m_pPD メンバーによって参照されるCPrintDialog オブジェクトに格納されます。 文書の長さが印刷前にわかっていれば、 CView::OnPreparePrintingのオーバーライドからこの関数を呼び出します。 文書の長さが、[印刷] ダイアログ ボックスでユーザーが指定した設定に依存する場合は、 CView::OnBeginPrintingのオーバーライドからこの関数を呼び出します。 文書の長さが印刷されるまで不明な場合は、 m_bContinuePrinting メンバーを使用して印刷ループを制御します。

CView::OnPreparePrinting の例を参照してください。

CPrintInfo::SetMinPage

この関数を呼び出して、ドキュメントの最初のページの番号を指定します。

void SetMinPage(UINT nMinPage);

パラメーター

nMinPage
ドキュメントの最初のページの番号。

解説

通常、ページ番号は 1 から始まります。 この値は、m_pPD メンバーによって参照されるCPrintDialog オブジェクトに格納されます。

関連項目

MFC サンプル DIBLOOK
階層図
CView::OnBeginPrinting
CView::OnEndPrinting
CView::OnEndPrintPreview
CView::OnPrepareDC
CView::OnPreparePrinting
CView::OnPrint