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 つの間で情報を交換するために使用されます。 たとえば、フレームワークは、CPrintInfo
のm_nCurPage
メンバーに値を割り当てることで、印刷するドキュメントのページをビュー クラスに通知します。ビュー クラスは値を取得し、指定されたページの実際の印刷を実行します。
もう 1 つの例は、文書の長さが印刷されるまで認識されない場合です。 この状況では、ビュー クラスは、ページが印刷されるたびにドキュメントの末尾をテストします。 終了に達すると、ビュー クラスはCPrintInfo
のm_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_dwFlags
と m_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::OnPrepareDC
と CView::OnPrint
を 1 回呼び出し、毎回このメンバーに異なる値を指定します。その値の範囲は、 GetFromPage
によって返される値から、 GetToPage
によって返される値までです。 CView::OnPrepareDC
とCView::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