CPrintDialogEx クラス
Windows Print プロパティ シートによって提供されるサービスをカプセル化します。
構文
class CPrintDialogEx : public CCommonDialog
メンバー
パブリック コンストラクター
名前 | 説明 |
---|---|
CPrintDialogEx::CPrintDialogEx | CPrintDialogEx オブジェクトを構築します。 |
パブリック メソッド
名前 | 説明 |
---|---|
CPrintDialogEx::CreatePrinterDC | [印刷] ダイアログ ボックスを表示せずに、プリンター デバイス コンテキストを作成します。 |
CPrintDialogEx::D oModal | ダイアログ ボックスを表示し、ユーザーが選択できるようにします。 |
CPrintDialogEx::GetCopies | 要求されたコピーの数を取得します。 |
CPrintDialogEx::GetDefaults | ダイアログ ボックスを表示せずに、デバイスの既定値を取得します。 |
CPrintDialogEx::GetDeviceName | 現在選択されているプリンター デバイスの名前を取得します。 |
CPrintDialogEx::GetDevMode | 構造体を取得します DEVMODE 。 |
CPrintDialogEx::GetDriverName | システム定義プリンター デバイス ドライバーの名前を取得します。 |
CPrintDialogEx::GetPortName | 現在選択されているプリンター ポートの名前を取得します。 |
CPrintDialogEx::GetPrinterDC | プリンター デバイス コンテキストへのハンドルを取得します。 |
CPrintDialogEx::P rintAll | 文書のすべてのページを印刷するかどうかを指定します。 |
CPrintDialogEx::P rintCollate | 照合されたコピーを要求するかどうかを決定します。 |
CPrintDialogEx::P rintCurrentPage | 文書の現在のページを印刷するかどうかを決定します。 |
CPrintDialogEx::P rintRange | 指定した範囲のページのみを印刷するかどうかを決定します。 |
CPrintDialogEx::P rintSelection | 現在選択されている項目のみを印刷するかどうかを指定します。 |
パブリック データ メンバー
名前 | 説明 |
---|---|
CPrintDialogEx::m_pdex | オブジェクトをカスタマイズするために使用される CPrintDialogEx 構造体。 |
解説
フレームワークに依存して、アプリケーションの印刷プロセスのさまざまな側面を処理できます。 フレームワークを使用して印刷タスクを処理する方法の詳細については、印刷に関する記事を参照してください。
フレームワークが関与せずにアプリケーションで印刷を処理する場合は、指定されたコンストラクターで "そのまま" クラスを使用 CPrintDialogEx
するか、独自のダイアログ クラス CPrintDialogEx
を派生させ、ニーズに合わせてコンストラクターを記述することができます。 どちらの場合も、これらのダイアログ ボックスはクラス CCommonDialog
から派生しているため、標準の MFC ダイアログ ボックスと同様に動作します。
オブジェクトを CPrintDialogEx
使用するには、まずコンストラクターを使用してオブジェクトを CPrintDialogEx
作成します。 ダイアログ ボックスが作成されたら、ダイアログ ボックスのコントロールの値を初期化するために、m_pdex構造体内の任意の値を設定または変更できます。 構造は m_pdex
PRINTDLGEX 型 です。 この構造の詳細については、Windows SDK を参照してください。
独自のm_pdex
hDevMode
ハンドルをメンバーにhDevNames
指定しない場合は、ダイアログ ボックスが完了したら、これらのハンドルに対して Windows 関数GlobalFree
を呼び出してください。
ダイアログ ボックス コントロールを初期化した後、メンバー関数を DoModal
呼び出してダイアログ ボックスを表示し、ユーザーが印刷オプションを選択できるようにします。 戻ったときに DoModal
、ユーザーが [OK]、[適用]、または [キャンセル] ボタンを選択したかどうかを確認できます。
ユーザーが [OK] を押した場合は、's メンバー関数を使用 CPrintDialogEx
して、ユーザーが入力した情報を取得できます。
この CPrintDialogEx::GetDefaults
メンバー関数は、ダイアログ ボックスを表示せずに、現在のプリンターの既定値を取得する場合に便利です。 この方法では、ユーザーの操作は必要ありません。
Windows CommDlgExtendedError
関数を使用すると、ダイアログ ボックスの初期化中にエラーが発生したかどうかを確認したり、エラーの詳細を確認したりできます。 この関数の詳細については、Windows SDK を参照してください。
使用CPrintDialogEx
の詳細については、「共通ダイアログ クラス」を参照してください。
継承階層
IObjectWithSite
IPrintDialogCallback
CPrintDialogEx
必要条件
ヘッダー: afxdlgs.h
CPrintDialogEx::CPrintDialogEx
Windows Print プロパティ シートを作成します。
CPrintDialogEx(
DWORD dwFlags = PD_ALLPAGES | PD_USEDEVMODECOPIES | PD_NOPAGENUMS | PD_HIDEPRINTTOFILE | PD_NOSELECTION | PD_NOCURRENTPAGE,
CWnd* pParentWnd = NULL);
パラメーター
dwFlags
ビットごとの OR 演算子を使用して、ダイアログ ボックスの設定をカスタマイズするために使用できる 1 つ以上のフラグ。 たとえば、PD_ALLPAGES フラグは、文書のすべてのページに既定の印刷範囲を設定します。 これらのフラグの 詳細については、Windows SDK の PRINTDLGEX 構造体を参照してください。
pParentWnd
ダイアログ ボックスの親ウィンドウまたは所有者ウィンドウへのポインター。
解説
このメンバー関数は、オブジェクトのみを構築します。 ダイアログ ボックスを DoModal
表示するには、メンバー関数を使用します。
CPrintDialogEx::CreatePrinterDC
DEVMODE 構造体と DEVNAMES 構造体からプリンター デバイス コンテキスト (DC) を作成します。
HDC CreatePrinterDC();
戻り値
新しく作成されたプリンター デバイス コンテキストを処理します。
解説
返された DC は、m_pdexのhDC
メンバーにも格納されます。
この DC は現在のプリンター DC と見なされ、以前に取得した他のプリンター DC は削除する必要があります。 この関数を呼び出し、結果の DC を使用することができます。印刷ダイアログ ボックスは表示しません。
CPrintDialogEx::D oModal
この関数を呼び出して、Windows Print プロパティ シートを表示し、ユーザーがコピー数、ページ範囲、コピーを照合するかどうかなど、さまざまな印刷オプションを選択できるようにします。
virtual INT_PTR DoModal();
戻り値
INT_PTR戻り値は実際には HRESULT です。 Windows SDK の PrintDlgEx の「戻り値」セクションを参照してください。
解説
構造体のメンバーを設定して、さまざまな印刷ダイアログ オプションを m_pdex
初期化する場合は、呼び出す DoModal
前に、ダイアログ オブジェクトが構築された後にこれを行う必要があります。
呼び出した DoModal
後、他のメンバー関数を呼び出して、ユーザーがダイアログ ボックスに入力した設定または情報を取得できます。
PD_RETURNDC フラグを呼び出DoModal
すときに使用すると、m_pdexのメンバーでhDC
プリンター DC が返されます。 この DC は、呼び出し元CPrintDialogEx
が DeleteDC を呼び出して解放する必要があります。
CPrintDialogEx::GetCopies
呼び出し後にこの関数を呼び出 DoModal
して、要求されたコピーの数を取得します。
int GetCopies() const;
戻り値
要求されたコピーの数。
CPrintDialogEx::GetDefaults
この関数を呼び出して、ダイアログ ボックスを表示せずに既定のプリンターのデバイスの既定値を取得します。
BOOL GetDefaults();
戻り値
成功した場合は TRUE、それ以外の場合は FAL Standard Edition。
解説
DEVMODE 構造体と DEVNAMES 構造体からプリンター デバイス コンテキスト (DC) を作成します。
GetDefaults
では、Print プロパティ シートは表示されません。 代わりに、システムの既定のプリンター用に初期化された DEVMODE 構造体と hDevMode
DEVNAMES 構造体を処理するように、m_pdexのメンバーとメンバーを設定hDevNames
します。 両方 hDevNames
とも hDevMode
NULL であるか、失敗 GetDefaults
する必要があります。
PD_RETURNDC フラグが設定されている場合、この関数は呼び出し元に戻る hDevNames
だけでなく 、呼び出し hDevMode
元に (配置 m_pdex.hDevNames
されている m_pdex.hDevMode
) だけでなく、プリンター DC m_pdex.hDC
も返します。 オブジェクトの操作が完了したら、呼び出し元がプリンター DC を削除し、ハンドルで Windows GlobalFree 関数を CPrintDialogEx
呼び出す必要があります。
CPrintDialogEx::GetDeviceName
DoModal を呼び出して現在選択されているプリンターの名前を取得した後、または GetDefaults を呼び出して既定のプリンターの名前を取得した後に、この関数を呼び出します。
CString GetDeviceName() const;
戻り値
現在選択されているプリンターの名前。
解説
CDC::CreateDC のCString
呼び出しで返されるGetDeviceName
オブジェクトへのポインターを値lpszDeviceName
として使用します。
CPrintDialogEx::GetDevMode
DoModal または GetDefaults を呼び出して印刷デバイスに関する情報を取得した後、この関数を呼び出します。
LPDEVMODE GetDevMode() const;
戻り値
DEVMODE データ構造。印刷ドライバーのデバイスの初期化と環境に関する情報が含まれます。 Windows SDK で説明されている Windows GlobalUnlock 関数を使用して、この構造体によって取得されたメモリのロックを解除する必要があります。
CPrintDialogEx::GetDriverName
DoModal または GetDefaults を呼び出してシステム定義プリンター デバイス ドライバーの名前を取得した後、この関数を呼び出します。
CString GetDriverName() const;
戻り値
CString
システム定義ドライバー名を指定します。
解説
CDC::CreateDC のCString
呼び出しで lpszDriverName の値として返されるGetDriverName
オブジェクトへのポインターを使用します。
CPrintDialogEx::GetPortName
DoModal または GetDefaults を呼び出して現在選択されているプリンター ポートの名前を取得した後、この関数を呼び出します。
CString GetPortName() const;
戻り値
現在選択されているプリンター ポートの名前。
CPrintDialogEx::GetPrinterDC
プリンター デバイス コンテキストへのハンドルを返します。
HDC GetPrinterDC() const;
戻り値
プリンター デバイス コンテキストへのハンドル。
解説
デバイス コンテキストの使用が完了したら、Windows DeleteDC 関数を呼び出してデバイス コンテキストを削除する必要があります。
CPrintDialogEx::m_pdex
ダイアログ オブジェクトの特性を格納するメンバーを持つ PRINTDLGEX 構造体。
PRINTDLGEX m_pdex;
解説
オブジェクトをCPrintDialogEx
構築した後、DoModal メンバー関数を呼び出す前に、ダイアログ ボックスのさまざまな側面を設定するために使用m_pdex
できます。 構造のm_pdex
詳細については、Windows SDK の PRINTDLGEX を参照してください。
データ メンバーを m_pdex
直接変更する場合は、既定の動作をオーバーライドします。
CPrintDialogEx::P rintAll
この関数は、文書内のすべてのページを印刷するかどうかを決定する呼び出しの後に呼び出 DoModal
します。
BOOL PrintAll() const;
戻り値
文書内のすべてのページを印刷する場合は TRUE。それ以外の場合は FAL Standard Edition。
CPrintDialogEx::P rintCollate
この関数は、プリンターが文書のすべての印刷コピーを照合する必要があるかどうかを判断するために呼び出した後に呼び出 DoModal
します。
BOOL PrintCollate() const;
戻り値
ユーザーがダイアログ ボックスで照合チェック ボックスを選択した場合は TRUE、それ以外の場合は FAL Standard Edition。
CPrintDialogEx::P rintCurrentPage
呼び出し後にこの関数を呼び出 DoModal
して、ドキュメント内の現在のページを印刷するかどうかを判断します。
BOOL PrintCurrentPage() const;
戻り値
印刷ダイアログで [現在のページを印刷] が選択されている場合は TRUE、それ以外の場合は FAL Standard Edition。
CPrintDialogEx::P rintRange
この関数は、文書内のページの範囲のみを印刷するかどうかを判断する呼び出し後に呼び出 DoModal
します。
BOOL PrintRange() const;
戻り値
文書内のページの範囲のみを印刷する場合は TRUE。それ以外の場合は FAL Standard Edition。
解説
指定したページ範囲は、m_pdexから決定できます (Windows SDK の PRINTDLGEX 構造体を参照)。nPageRanges
nMaxPageRanges
lpPageRanges
CPrintDialogEx::P rintSelection
現在選択されている項目のみを印刷するかどうかを判断するには、呼び出し後にこの関数を呼び出 DoModal
します。
BOOL PrintSelection() const;
戻り値
選択した項目のみを印刷する場合は TRUE。それ以外の場合は FAL Standard Edition。
関連項目
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示